當前位置: 首頁>>代碼示例>>Java>>正文


Java ClassSize類代碼示例

本文整理匯總了Java中org.apache.tajo.util.ClassSize的典型用法代碼示例。如果您正苦於以下問題:Java ClassSize類的具體用法?Java ClassSize怎麽用?Java ClassSize使用的例子?那麽, 這裏精選的類代碼示例或許可以為您提供幫助。


ClassSize類屬於org.apache.tajo.util包,在下文中一共展示了ClassSize類的2個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Java代碼示例。

示例1: calculateMemorySize

import org.apache.tajo.util.ClassSize; //導入依賴的package包/類
public static long calculateMemorySize(Tuple tuple) {
  long total = ClassSize.OBJECT;
  for (Datum datum : tuple.getValues()) {
    switch (datum.type()) {

    case NULL_TYPE:
      total += NULL_DATUM;
      break;

    case BOOLEAN:
      total += BOOL_DATUM;
      break;

    case BIT:
      total += BIT_DATUM;
      break;

    case CHAR:
      total += CHAR_DATUM + datum.size();
      break;

    case INT1:
    case INT2:
      total += INT2_DATUM;
      break;

    case INT4:
      total += INT4_DATUM;
      break;

    case INT8:
      total += INT8_DATUM;
      break;

    case FLOAT4:
      total += FLOAT4_DATUM;
      break;

    case FLOAT8:
      total += FLOAT4_DATUM;
      break;

    case TEXT:
      total += TEXT_DATUM + datum.size();
      break;

    case DATE:
      total += DATE_DATUM;
      break;

    case TIME:
      total += TIME_DATUM;
      break;

    case TIMESTAMP:
      total += TIMESTAMP_DATUM;
      break;

    }
  }

  return total;
}
 
開發者ID:apache,項目名稱:incubator-tajo,代碼行數:64,代碼來源:MemoryUtil.java

示例2: calculateMemorySize

import org.apache.tajo.util.ClassSize; //導入依賴的package包/類
public static long calculateMemorySize(Tuple tuple) {
  long total = ClassSize.OBJECT;
  for (Datum datum : tuple.getValues()) {
    switch (datum.type()) {

    case NULL_TYPE:
      total += NULL_DATUM;
      break;

    case BOOLEAN:
      total += BOOL_DATUM;
      break;

    case BIT:
      total += BIT_DATUM;
      break;

    case CHAR:
      total += CHAR_DATUM + datum.size();
      break;

    case INT1:
    case INT2:
      total += INT2_DATUM;
      break;

    case INT4:
      total += INT4_DATUM;
      break;

    case INT8:
      total += INT8_DATUM;
      break;

    case FLOAT4:
      total += FLOAT4_DATUM;
      break;

    case FLOAT8:
      total += FLOAT4_DATUM;
      break;

    case TEXT:
      total += TEXT_DATUM + datum.size();
      break;

    case DATE:
      total += DATE_DATUM;
      break;

    case TIME:
      total += TIME_DATUM;
      break;

    case TIMESTAMP:
      total += TIMESTAMP_DATUM;
      break;

    default:
      break;
    }
  }

  return total;
}
 
開發者ID:gruter,項目名稱:tajo-cdh,代碼行數:66,代碼來源:MemoryUtil.java


注:本文中的org.apache.tajo.util.ClassSize類示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。