当前位置: 首页>>代码示例>>Java>>正文


Java ChronicleMapBuilder类代码示例

本文整理汇总了Java中net.openhft.chronicle.map.ChronicleMapBuilder的典型用法代码示例。如果您正苦于以下问题:Java ChronicleMapBuilder类的具体用法?Java ChronicleMapBuilder怎么用?Java ChronicleMapBuilder使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。


ChronicleMapBuilder类属于net.openhft.chronicle.map包,在下文中一共展示了ChronicleMapBuilder类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: getMap

import net.openhft.chronicle.map.ChronicleMapBuilder; //导入依赖的package包/类
private ChronicleMap<Integer, String> getMap(String mapName, Class<Integer> kClass, Class<String> vClass, int entrySize) throws BenchmarkException {
    try {
        return ChronicleMapBuilder
                .of(kClass, vClass)
                .entrySize(entrySize)
                .createPersistedTo(new File(mapName));
    } catch (IOException e) {
        throw new BenchmarkException("", e);
    }
}
 
开发者ID:hailpam,项目名称:dobef,代码行数:11,代码来源:ChronicleBenchmark.java

示例2: OffHeapVarBitMetricStore

import net.openhft.chronicle.map.ChronicleMapBuilder; //导入依赖的package包/类
public OffHeapVarBitMetricStore(long size, int valueSize, String chunkInfo, String dir) {
  this.chunkInfo = chunkInfo;

  ChronicleMapBuilder<LongValue, ByteBuffer> mapBuilder = ChronicleMap
      .of(LongValue.class, ByteBuffer.class)
      .entries(size)
      .averageValueSize(valueSize);

  if (chunkInfo != null && !chunkInfo.isEmpty() && !dir.isEmpty()) {
    File offHeapFile = new File(dir + "/" + offHeapNamePrefix + "_" + chunkInfo);
    try {
      timeSeries = mapBuilder.name(offHeapNamePrefix + "_" + chunkInfo)
          .createPersistedTo(offHeapFile);
    } catch (IOException e) {
      LOG.error("Failed to create an offheap store {} with error {}", offHeapFile, e.getMessage());
      throw new IllegalArgumentException("Failed to create an off heap store.", e);
    }
  } else {
    timeSeries = mapBuilder.name(offHeapNamePrefix).create();
  }
  LOG.info("Created an off heap metric store of size={} valueSize={} chunkInfo={} in dir={}",
      size, valueSize, chunkInfo, dir);
}
 
开发者ID:pinterest,项目名称:yuvi,代码行数:24,代码来源:OffHeapVarBitMetricStore.java

示例3: buildMap

import net.openhft.chronicle.map.ChronicleMapBuilder; //导入依赖的package包/类
private static Map<String, String> buildMap(final File f, final boolean reverse) {
	final ElapsedTime et = SystemClock.startClock();
	final Number[] stats = computeStats(f);
	final long entries = stats[0].longValue(); 
	final double avgKeySize = stats[1].doubleValue();
	final double avgValueSize = stats[2].doubleValue();
	final ChronicleMap<String, String> map = ChronicleMapBuilder.of(String.class, String.class)
			.averageKeySize(avgKeySize)
			.averageValueSize(avgValueSize)
			.entries(entries)				
			.maxBloatFactor(5.0)
			.create();		
	final String[] lines = URLHelper.getTextFromFile(f).split("\n");
	Arrays.stream(lines)
		.parallel()
		.map(line -> line.split(","))
		.forEach(kv -> {
			if(reverse) {
				map.put(kv[1], kv[0]);
			} else {
				map.put(kv[0], kv[1]);
			}
		});
	final String avg = et.printAvg("Records", entries);
	log.info("Loaded Map from {}. Entries:{}, Size:{},  {}", f.getName(), entries, map.size(), avg);
	return map;
}
 
开发者ID:nickman,项目名称:HeliosStreams,代码行数:28,代码来源:CQ4GenFromTestData.java

示例4: shouldApplyLambdaConfigsAgainstBuilder

import net.openhft.chronicle.map.ChronicleMapBuilder; //导入依赖的package包/类
@Test
@SuppressWarnings("unchecked")
public void shouldApplyLambdaConfigsAgainstBuilder() throws Throwable {
    ChronicleMapMacheProvisioner<String, Integer> provisioner = chronicleMap(String.class, Integer.class)
            .averageKeySize(10.0)
            .actualChunksPerSegment(100);

    List<ChronicleMapBuilderConfig<String, Integer>> configs =
            (List<ChronicleMapBuilderConfig<String, Integer>>) getInternalState(provisioner, "configToApply");

    ChronicleMapBuilder<String, Integer> mockBuilder = Mockito.mock(ChronicleMapBuilder.class);

    configs.stream().forEach((config) -> config.apply(mockBuilder));

    verify(mockBuilder).averageKeySize(10.0);
    verify(mockBuilder).actualChunksPerSegment(100);
}
 
开发者ID:Excelian,项目名称:Mache,代码行数:18,代码来源:ChronicleMapMacheProvisionerShould.java

示例5: shouldCorrectlySetSizeValues

import net.openhft.chronicle.map.ChronicleMapBuilder; //导入依赖的package包/类
@Test
@SuppressWarnings("unchecked")
public void shouldCorrectlySetSizeValues() throws Throwable {
    ChronicleMapMacheProvisioner<String, Integer> provisioner = chronicleMap(String.class, Integer.class)
            .size(1000);

    assertEquals(1000, getInternalState(provisioner, "upperWatermark"));
    assertEquals(850 - 1, getInternalState(provisioner, "lowerWatermark"));
    assertEquals(925, getInternalState(provisioner, "acceptableWatermark"));

    List<ChronicleMapBuilderConfig<String, Integer>> configs =
            (List<ChronicleMapBuilderConfig<String, Integer>>) getInternalState(provisioner, "configToApply");

    ChronicleMapBuilder<String, Integer> mockBuilder = Mockito.mock(ChronicleMapBuilder.class);

    configs.stream().forEach((config) -> config.apply(mockBuilder));

    verify(mockBuilder).entries(1150);
}
 
开发者ID:Excelian,项目名称:Mache,代码行数:20,代码来源:ChronicleMapMacheProvisionerShould.java

示例6: test

import net.openhft.chronicle.map.ChronicleMapBuilder; //导入依赖的package包/类
@Test
public void test() throws ExecutionException, InterruptedException
{
	ChronicleMapBuilder<LongValue, PortfolioAssetInterface> mapBuilder = ChronicleMapBuilder.of(LongValue.class, PortfolioAssetInterface.class).entries(nAssets);

	try (ChronicleMap<LongValue, PortfolioAssetInterface> cache = mapBuilder.create())
	{
		createData(cache);

		// Compute multiple times to get an reasonable average compute time
		for (int i = 0; i < nRepetitions; i++)
		{
			computeValue(cache);
		}
	}
}
 
开发者ID:OpenHFT,项目名称:Chronicle-Map,代码行数:17,代码来源:PortfolioValueTest.java

示例7: testComplexSerialization

import net.openhft.chronicle.map.ChronicleMapBuilder; //导入依赖的package包/类
@Test
public void testComplexSerialization() {
    try (ChronicleMap<String, A> map = ChronicleMapBuilder
            .of(String.class, A.class)
            .valueMarshaller(AMarshaller.INSTANCE)
            .entries(5)
            .averageKeySize(4)
            .averageValueSize(1000)
            .create()) {
        A obj_A = new A();
        obj_A.str_ = "a";
        obj_A.list_ = new ArrayList<>();
        B b = new B();
        b.str_ = "b";
        obj_A.list_.add(b);
        map.put("KEY1", obj_A);
        map.get("KEY1");
    }
}
 
开发者ID:OpenHFT,项目名称:Chronicle-Map,代码行数:20,代码来源:PointListSerializationTest.java

示例8: addToAMap2

import net.openhft.chronicle.map.ChronicleMapBuilder; //导入依赖的package包/类
@Test
@Ignore("TODO What is HACK???")
public void addToAMap2() {
    DoubleArray.HACK = false;
    DoubleArray a = new DoubleArray(10);
    a.setData(new double[]{1, 2, 3, 4, 5});

    DoubleArray b = new DoubleArray(10);
    b.setData(new double[]{5, 6, 7, 8, 9});

    ChronicleMap<Integer, DoubleArray> proxyMap = ChronicleMapBuilder
            .of(Integer.class, DoubleArray.class)
            .averageValueSize(6 * 8)
            .create();
    proxyMap.put(1, a);
    proxyMap.put(2, b);

    System.out.println(proxyMap.get(1));
    System.out.println(proxyMap.get(2));
    proxyMap.close();
    DoubleArray.HACK = true;
}
 
开发者ID:OpenHFT,项目名称:Chronicle-Map,代码行数:23,代码来源:DoubleArrayTest.java

示例9: ChronicleMapStore

import net.openhft.chronicle.map.ChronicleMapBuilder; //导入依赖的package包/类
public ChronicleMapStore(String filePath) {
    try {
        this.store = ChronicleMapBuilder
                .of(String.class, Member.class)
                .entries(50000)
                .createOrRecoverPersistedTo(new File(filePath));
    } catch (IOException e) {
        LOGGER.error("Initialize persistent KVStore exception", e);
        throw new RuntimeException(e);
    }
}
 
开发者ID:GrapeBaBa,项目名称:fabric-java,代码行数:12,代码来源:ChronicleMapStore.java

示例10: create

import net.openhft.chronicle.map.ChronicleMapBuilder; //导入依赖的package包/类
@Override
public Mache<K, V> create(Class<K> keyType, Class<V> valueType, MacheLoader<K, V> cacheLoader) {
    ChronicleMapBuilder<K, V> chronicleMapBuilder = ChronicleMapBuilder.of(keyType, valueType).entries(11500);
    applyConfig(chronicleMapBuilder);

    ConcurrentMap<K, V> map = buildMap(chronicleMapBuilder);

    ConcurrentLRUCache<K, V> cache = new ConcurrentLRUCache<>(upperWatermark, lowerWatermark,
            acceptableWatermark, runCleanupThread, runNewThreadForCleanup, evictionListener, map);

    return new ChronicleMapMache<>(cacheLoader, cache);
}
 
开发者ID:Excelian,项目名称:Mache,代码行数:13,代码来源:ChronicleMapMacheProvisioner.java

示例11: buildMap

import net.openhft.chronicle.map.ChronicleMapBuilder; //导入依赖的package包/类
private ConcurrentMap<K, V> buildMap(ChronicleMapBuilder<K, V> chronicleMapBuilder) {
    ConcurrentMap<K, V> map;
    if (persistedTo == null) {
        map = chronicleMapBuilder.create();
    } else {
        try {
            map = chronicleMapBuilder.createPersistedTo(persistedTo);
        } catch (IOException e) {
            throw new IllegalArgumentException("Failed to create persisted Chronicle Map.", e);
        }
    }
    return map;
}
 
开发者ID:Excelian,项目名称:Mache,代码行数:14,代码来源:ChronicleMapMacheProvisioner.java

示例12: ProcessInstanceLimiter

import net.openhft.chronicle.map.ChronicleMapBuilder; //导入依赖的package包/类
/**
 * Create a ProcessInstanceLimiter instance using the default shared file
 * named ProcessInstanceLimiter_DEFAULT_SHARED_MAP_ in the tmp directory.
 *
 * @param sharedMapPath - The path to a file which will be used to store the shared
 *                      map (the file need not pre-exist)
 * @param callback      - An instance of the Callback interface, which will receive
 *                      callbacks
 * @throws IOException - if the default shared file cannot be created
 */
public ProcessInstanceLimiter(String sharedMapPath, Callback callback) throws IOException {
    this.sharedMapPath = sharedMapPath;
    this.callback = callback;
    ChronicleMapBuilder<String, Data> builder =
            ChronicleMapBuilder.of(String.class, Data.class);
    builder.entries(1000);
    builder.averageKeySize((DEFAULT_PROCESS_NAME + "#").length());
    this.theSharedMap = builder.createPersistedTo(new File(sharedMapPath));
    Thread t = new Thread(this, "ProcessInstanceLimiter updater");
    t.setDaemon(true);
    t.start();
}
 
开发者ID:OpenHFT,项目名称:Chronicle-Map,代码行数:23,代码来源:ProcessInstanceLimiter.java

示例13: acquireCHM

import net.openhft.chronicle.map.ChronicleMapBuilder; //导入依赖的package包/类
static ChronicleMap<String, BondVOInterface> acquireCHM() throws IOException {
    // ensure thread ids are globally unique.
    AffinitySupport.setThreadId();
    return ChronicleMapBuilder.of(String.class, BondVOInterface.class)
            .entries(16)
            .averageKeySize("369604101".length()).create();
}
 
开发者ID:OpenHFT,项目名称:Chronicle-Map,代码行数:8,代码来源:PingPongCASLeft.java

示例14: newMap

import net.openhft.chronicle.map.ChronicleMapBuilder; //导入依赖的package包/类
static Map newMap() {
    try {
        return ChronicleMapBuilder.of(Object.class, Object.class).create();
    } catch (Exception e) {
        throw new RuntimeException("Can't instantiate CHM : " + e);
    }
}
 
开发者ID:OpenHFT,项目名称:Chronicle-Map,代码行数:8,代码来源:MapCheck.java

示例15: beforeClass

import net.openhft.chronicle.map.ChronicleMapBuilder; //导入依赖的package包/类
@BeforeClass
public static void beforeClass() {
    chm = ChronicleMapBuilder
            .of(LongValue.class, ByteArray.class)
            .entries(1000)
            .create();
}
 
开发者ID:OpenHFT,项目名称:Chronicle-Map,代码行数:8,代码来源:OffHeapByteArrayExampleTest.java


注:本文中的net.openhft.chronicle.map.ChronicleMapBuilder类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。