org.apache.spark.unsafe.Platform.reallocateMemory()方法的使用及代码示例

x33g5p2x  于2022-01-26 转载在 其他  
字(5.2k)|赞(0)|评价(0)|浏览(144)

本文整理了Java中org.apache.spark.unsafe.Platform.reallocateMemory()方法的一些代码示例,展示了Platform.reallocateMemory()的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Platform.reallocateMemory()方法的具体详情如下:
包路径:org.apache.spark.unsafe.Platform
类名称:Platform
方法名:reallocateMemory

Platform.reallocateMemory介绍

暂无

代码示例

代码示例来源:origin: org.apache.spark/spark-sql_2.10

@Override
 protected void reserveInternal(int newCapacity) {
  int oldCapacity = (nulls == 0L) ? 0 : capacity;
  if (this.resultArray != null) {
   this.lengthData =
     Platform.reallocateMemory(lengthData, oldCapacity * 4, newCapacity * 4);
   this.offsetData =
     Platform.reallocateMemory(offsetData, oldCapacity * 4, newCapacity * 4);
  } else if (type instanceof ByteType || type instanceof BooleanType) {
   this.data = Platform.reallocateMemory(data, oldCapacity, newCapacity);
  } else if (type instanceof ShortType) {
   this.data = Platform.reallocateMemory(data, oldCapacity * 2, newCapacity * 2);
  } else if (type instanceof IntegerType || type instanceof FloatType ||
    type instanceof DateType || DecimalType.is32BitDecimalType(type)) {
   this.data = Platform.reallocateMemory(data, oldCapacity * 4, newCapacity * 4);
  } else if (type instanceof LongType || type instanceof DoubleType ||
    DecimalType.is64BitDecimalType(type) || type instanceof TimestampType) {
   this.data = Platform.reallocateMemory(data, oldCapacity * 8, newCapacity * 8);
  } else if (resultStruct != null) {
   // Nothing to store.
  } else {
   throw new RuntimeException("Unhandled " + type);
  }
  this.nulls = Platform.reallocateMemory(nulls, oldCapacity, newCapacity);
  Platform.setMemory(nulls + oldCapacity, (byte)0, newCapacity - oldCapacity);
  capacity = newCapacity;
 }
}

代码示例来源:origin: org.apache.spark/spark-sql_2.11

@Override
protected void reserveInternal(int newCapacity) {
 int oldCapacity = (nulls == 0L) ? 0 : capacity;
 if (isArray() || type instanceof MapType) {
  this.lengthData =
    Platform.reallocateMemory(lengthData, oldCapacity * 4L, newCapacity * 4L);
  this.offsetData =
    Platform.reallocateMemory(offsetData, oldCapacity * 4L, newCapacity * 4L);
 } else if (type instanceof ByteType || type instanceof BooleanType) {
  this.data = Platform.reallocateMemory(data, oldCapacity, newCapacity);
 } else if (type instanceof ShortType) {
  this.data = Platform.reallocateMemory(data, oldCapacity * 2L, newCapacity * 2L);
 } else if (type instanceof IntegerType || type instanceof FloatType ||
   type instanceof DateType || DecimalType.is32BitDecimalType(type)) {
  this.data = Platform.reallocateMemory(data, oldCapacity * 4L, newCapacity * 4L);
 } else if (type instanceof LongType || type instanceof DoubleType ||
   DecimalType.is64BitDecimalType(type) || type instanceof TimestampType) {
  this.data = Platform.reallocateMemory(data, oldCapacity * 8L, newCapacity * 8L);
 } else if (childColumns != null) {
  // Nothing to store.
 } else {
  throw new RuntimeException("Unhandled " + type);
 }
 this.nulls = Platform.reallocateMemory(nulls, oldCapacity, newCapacity);
 Platform.setMemory(nulls + oldCapacity, (byte)0, newCapacity - oldCapacity);
 capacity = newCapacity;
}

代码示例来源:origin: org.apache.spark/spark-sql

@Override
protected void reserveInternal(int newCapacity) {
 int oldCapacity = (nulls == 0L) ? 0 : capacity;
 if (isArray() || type instanceof MapType) {
  this.lengthData =
    Platform.reallocateMemory(lengthData, oldCapacity * 4L, newCapacity * 4L);
  this.offsetData =
    Platform.reallocateMemory(offsetData, oldCapacity * 4L, newCapacity * 4L);
 } else if (type instanceof ByteType || type instanceof BooleanType) {
  this.data = Platform.reallocateMemory(data, oldCapacity, newCapacity);
 } else if (type instanceof ShortType) {
  this.data = Platform.reallocateMemory(data, oldCapacity * 2L, newCapacity * 2L);
 } else if (type instanceof IntegerType || type instanceof FloatType ||
   type instanceof DateType || DecimalType.is32BitDecimalType(type)) {
  this.data = Platform.reallocateMemory(data, oldCapacity * 4L, newCapacity * 4L);
 } else if (type instanceof LongType || type instanceof DoubleType ||
   DecimalType.is64BitDecimalType(type) || type instanceof TimestampType) {
  this.data = Platform.reallocateMemory(data, oldCapacity * 8L, newCapacity * 8L);
 } else if (childColumns != null) {
  // Nothing to store.
 } else {
  throw new RuntimeException("Unhandled " + type);
 }
 this.nulls = Platform.reallocateMemory(nulls, oldCapacity, newCapacity);
 Platform.setMemory(nulls + oldCapacity, (byte)0, newCapacity - oldCapacity);
 capacity = newCapacity;
}

代码示例来源:origin: io.snappydata/snappy-spark-sql

@Override
 protected void reserveInternal(int newCapacity) {
  if (this.resultArray != null) {
   this.lengthData =
     Platform.reallocateMemory(lengthData, elementsAppended * 4, newCapacity * 4);
   this.offsetData =
     Platform.reallocateMemory(offsetData, elementsAppended * 4, newCapacity * 4);
  } else if (type instanceof ByteType || type instanceof BooleanType) {
   this.data = Platform.reallocateMemory(data, elementsAppended, newCapacity);
  } else if (type instanceof ShortType) {
   this.data = Platform.reallocateMemory(data, elementsAppended * 2, newCapacity * 2);
  } else if (type instanceof IntegerType || type instanceof FloatType ||
    type instanceof DateType || DecimalType.is32BitDecimalType(type)) {
   this.data = Platform.reallocateMemory(data, elementsAppended * 4, newCapacity * 4);
  } else if (type instanceof LongType || type instanceof DoubleType ||
    DecimalType.is64BitDecimalType(type) || type instanceof TimestampType) {
   this.data = Platform.reallocateMemory(data, elementsAppended * 8, newCapacity * 8);
  } else if (resultStruct != null) {
   // Nothing to store.
  } else {
   throw new RuntimeException("Unhandled " + type);
  }
  this.nulls = Platform.reallocateMemory(nulls, elementsAppended, newCapacity);
  Platform.setMemory(nulls + elementsAppended, (byte)0, newCapacity - elementsAppended);
  capacity = newCapacity;
 }
}

相关文章