- 使用 Spring Initializr 创建 Spring Boot 应用程序
- 在Spring Boot中配置Cassandra
- 在 Spring Boot 上配置 Tomcat 连接池
- 将Camel消息路由到嵌入WildFly的Artemis上
本文整理了Java中com.yahoo.memory.WritableMemory
类的一些代码示例,展示了WritableMemory
类的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。WritableMemory
类的具体详情如下:
包路径:com.yahoo.memory.WritableMemory
类名称:WritableMemory
[英]Provides read and write primitive and primitive array access to any of the four resources mentioned at the package level.
[中]提供对包级别提到的四种资源中任何一种的读写原语和原语数组访问。
代码示例来源:origin: apache/incubator-druid
@SuppressWarnings("ResultOfObjectAllocationIgnored")
@Override
public void init(final ByteBuffer buf, final int position)
{
final WritableMemory mem = WritableMemory.wrap(buf, ByteOrder.LITTLE_ENDIAN).writableRegion(position, size);
// Not necessary to keep the constructed object since it is cheap to reconstruct by wrapping the memory.
// The objects are not cached as in BuildBufferAggregator since they never exceed the max size and never move.
// So it is easier to reconstruct them by wrapping memory then to keep position-to-object mappings.
new Union(lgK, mem);
}
代码示例来源:origin: DataSketches/sketches-core
final byte[] byteArrOut = new byte[preBytes + dataBytes];
if (mem_ != null) {
mem_.getByteArray(0, byteArrOut, 0, preBytes + dataBytes);
final WritableMemory memOut = WritableMemory.wrap(byteArrOut);
memOut.putByte(PREAMBLE_LONGS_BYTE, (byte) CONST_PREAMBLE_LONGS); //RF not used = 0
memOut.putByte(SER_VER_BYTE, (byte) SER_VER);
memOut.putByte(FAMILY_BYTE, (byte) Family.INTERSECTION.getID());
memOut.putByte(LG_NOM_LONGS_BYTE, (byte) 0); //not used
memOut.putByte(LG_ARR_LONGS_BYTE, (byte) lgArrLongs_);
if (empty_) {
memOut.setBits(FLAGS_BYTE, (byte) EMPTY_FLAG_MASK);
memOut.clearBits(FLAGS_BYTE, (byte) EMPTY_FLAG_MASK);
memOut.putShort(SEED_HASH_SHORT, seedHash_);
memOut.putInt(RETAINED_ENTRIES_INT, curCount_);
memOut.putFloat(P_FLOAT, (float) 1.0);
memOut.putLong(THETA_LONG, thetaLong_);
memOut.putLongArray(preBytes, hashTable_, 0, 1 << lgArrLongs_);
代码示例来源:origin: DataSketches/sketches-core
@Override
public byte[] toByteArray() { //MY_FAMILY is stored in mem_
final byte lgArrLongs = mem_.getByte(LG_ARR_LONGS_BYTE);
final int preambleLongs = mem_.getByte(PREAMBLE_LONGS_BYTE) & 0X3F;
final int lengthBytes = (preambleLongs + (1 << lgArrLongs)) << 3;
final byte[] byteArray = new byte[lengthBytes];
final WritableMemory mem = WritableMemory.wrap(byteArray);
mem_.copyTo(0, mem, 0, lengthBytes);
return byteArray;
}
代码示例来源:origin: DataSketches/sketches-core
WritableMemory mem = WritableMemory.wrap(bytearray1);
long pre0 = mem.getLong(0);
mem.putLong(0, pre0); //restore
mem.putLong(0, pre0); //restore
mem.putLong(0, pre0); //restore
mem.putLong(0, pre0); //restore
final long origThetaLong = mem.getLong(THETA_LONG);
try {
mem.putLong(THETA_LONG, Long.MAX_VALUE / 2); //Corrupt the theta value
HeapAlphaSketch.heapifyInstance(mem, DEFAULT_UPDATE_SEED);
fail();
mem.putLong(THETA_LONG, origThetaLong); //restore theta
byte[] byteArray2 = new byte[bytearray1.length -1];
WritableMemory mem2 = WritableMemory.wrap(byteArray2);
mem.copyTo(0, mem2, 0, mem2.getCapacity());
try {
HeapAlphaSketch.heapifyInstance(mem2, DEFAULT_UPDATE_SEED);
代码示例来源:origin: apache/incubator-druid
private WritableMemory getMemory(ByteBuffer buffer)
{
WritableMemory mem = memCache.get(buffer);
if (mem == null) {
mem = WritableMemory.wrap(buffer, ByteOrder.LITTLE_ENDIAN);
memCache.put(buffer, mem);
}
return mem;
}
代码示例来源:origin: DataSketches/sketches-core
@Override
public void reset() {
//clear hash table
//hash table size and hashTableThreshold stays the same
//lgArrLongs stays the same
//thetaLongs resets to p
final int arrLongs = 1 << getLgArrLongs();
final int preambleLongs = mem_.getByte(PREAMBLE_LONGS_BYTE) & 0X3F;
final int preBytes = preambleLongs << 3;
mem_.clear(preBytes, arrLongs * 8L); //clear data array
//flags: bigEndian = readOnly = compact = ordered = false; empty = true.
mem_.putByte(FLAGS_BYTE, (byte) EMPTY_FLAG_MASK);
mem_.putInt(RETAINED_ENTRIES_INT, 0);
final float p = mem_.getFloat(P_FLOAT);
final long thetaLong = (long) (p * MAX_THETA_LONG_AS_DOUBLE);
mem_.putLong(THETA_LONG, thetaLong);
}
代码示例来源:origin: DataSketches/sketches-core
@Test(expectedExceptions = SketchesArgumentException.class)
public void compactNotSupported() {
ArrayOfDoublesSerDe serDe = new ArrayOfDoublesSerDe();
ItemsSketch<Double> sketch = ItemsSketch.getInstance(Comparator.naturalOrder());
byte[] byteArr = sketch.toByteArray(serDe);
WritableMemory mem = WritableMemory.wrap(byteArr);
mem.clearBits(PreambleUtil.FLAGS_BYTE, (byte) PreambleUtil.COMPACT_FLAG_MASK);
println(PreambleUtil.toString(mem, false));
ItemsSketch.getInstance(mem, Comparator.naturalOrder(), serDe);
}
代码示例来源:origin: DataSketches/sketches-core
private static void toFrom2(int lgConfigK, TgtHllType tgtHllType, int n) {
int bytes = HllSketch.getMaxUpdatableSerializationBytes(lgConfigK, tgtHllType);
byte[] byteArray = new byte[bytes];
WritableMemory wmem = WritableMemory.wrap(byteArray);
HllSketch src = new HllSketch(lgConfigK, tgtHllType, wmem);
for (int i = 0; i < n; i++) {
WritableMemory wmem2 = WritableMemory.wrap(updatableByteArr);
WritableMemory wmem3 = WritableMemory.allocate(bytes);
wmem2.copyTo(0, wmem3, 0, wmem2.getCapacity());
HllSketch dst3 = HllSketch.writableWrap(wmem3);
代码示例来源:origin: DataSketches/sketches-core
private static final void grow(final DirectHllArray host, final int oldLgAuxArrInts) {
final int oldAuxArrInts = 1 << oldLgAuxArrInts;
final int[] oldIntArray = new int[oldAuxArrInts]; //buffer old aux data
host.wmem.getIntArray(host.auxStart, oldIntArray, 0, oldAuxArrInts);
insertLgArr(host.wmem, oldLgAuxArrInts + 1); //update LgArr field
final long newAuxBytes = oldAuxArrInts << 3;
final long requestBytes = host.auxStart + newAuxBytes;
final long oldCapBytes = host.wmem.getCapacity();
if (requestBytes > oldCapBytes) {
final MemoryRequestServer svr = host.wmem.getMemoryRequestServer();
final WritableMemory newWmem = svr.request(requestBytes);
host.wmem.copyTo(0, newWmem, 0, host.auxStart);
newWmem.clear(host.auxStart, newAuxBytes); //clear space for new aux data
svr.requestClose(host.wmem, newWmem); //old host.wmem is now invalid
host.updateMemory(newWmem);
}
//rehash into larger aux array
final int configKmask = (1 << host.lgConfigK) - 1;
for (int i = 0; i < oldAuxArrInts; i++) {
final int fetched = oldIntArray[i];
if (fetched != EMPTY) {
//find empty in new array
final int index = find(host, fetched & configKmask);
host.wmem.putInt(host.auxStart + (~index << 2), fetched);
}
}
}
代码示例来源:origin: DataSketches/sketches-core
@Test(expectedExceptions = SketchesArgumentException.class)
public void checkSizeTooSmall() {
int k = 16;
WritableMemory mem = WritableMemory.wrap(new byte[(k*16) +32]); //initialized
SetOperation setOp = new SetOperationBuilder().setNominalEntries(k).build(Family.UNION, mem);
println(setOp.toString());
WritableMemory mem2 = WritableMemory.wrap(new byte[32]); //for just preamble
mem.copyTo(0, mem2, 0, 32); //too small
DirectQuickSelectSketch.writableWrap(mem2, Util.DEFAULT_UPDATE_SEED);
}
代码示例来源:origin: DataSketches/sketches-core
@Override
protected void rebuild(final int newCapacity) {
final int numValues = getNumValues();
checkIfEnoughMemory(mem_, newCapacity, numValues);
final int currCapacity = getCurrentCapacity();
final long[] keys = new long[currCapacity];
final double[] values = new double[currCapacity * numValues];
mem_.getLongArray(keysOffset_, keys, 0, currCapacity);
mem_.getDoubleArray(valuesOffset_, values, 0, currCapacity * numValues);
mem_.clear(keysOffset_,
((long) SIZE_OF_KEY_BYTES * newCapacity) + ((long) SIZE_OF_VALUE_BYTES * newCapacity * numValues));
mem_.putInt(RETAINED_ENTRIES_INT, 0);
mem_.putByte(LG_CUR_CAPACITY_BYTE, (byte)Integer.numberOfTrailingZeros(newCapacity));
valuesOffset_ = keysOffset_ + (SIZE_OF_KEY_BYTES * newCapacity);
lgCurrentCapacity_ = Integer.numberOfTrailingZeros(newCapacity);
for (int i = 0; i < keys.length; i++) {
if ((keys[i] != 0) && (keys[i] < theta_)) {
insert(keys[i], Arrays.copyOfRange(values, i * numValues, (i + 1) * numValues));
}
}
setRebuildThreshold();
}
代码示例来源:origin: DataSketches/sketches-core
@Test
public void checkStreamErrors2() {
WritableMemory wmem = WritableMemory.allocate(4 * 10);
int[] svStream = { 1 };
int[] wStream = { 2 };
try {
putPinnedSlidingMerged(wmem, 4, 0, 1, 1, 1, 0, (short) 0, svStream, wStream);
fail();
} catch (SketchesStateException e) { }
assertTrue(PreambleUtil.isCompressed(wmem));
}
代码示例来源:origin: DataSketches/sketches-core
final void updateMemory(final WritableMemory newWmem) {
wmem = newWmem;
mem = newWmem;
memObj = wmem.getArray();
memAdd = wmem.getCumulativeOffset(0L);
}
代码示例来源:origin: DataSketches/sketches-core
@Test
public void checkGrowFromWrappedEmptySketch() {
final int k = 16;
final int n = 0;
final int initBytes = DoublesSketch.getUpdatableStorageBytes(k, n); //8 bytes
final UpdateDoublesSketch usk1 = DoublesSketch.builder().setK(k).build();
final Memory origSketchMem = Memory.wrap(usk1.toByteArray());
try (WritableDirectHandle memHandle = WritableMemory.allocateDirect(initBytes)) {
WritableMemory mem = memHandle.get();
origSketchMem.copyTo(0, mem, 0, initBytes);
UpdateDoublesSketch usk2 = DirectUpdateDoublesSketch.wrapInstance(mem);
assertTrue(mem.isSameResource(usk2.getMemory()));
assertEquals(mem.getCapacity(), initBytes);
assertTrue(mem.isDirect());
assertTrue(usk2.isEmpty());
//update the sketch forcing it to grow on-heap
for (int i = 1; i <= 5; i++) { usk2.update(i); }
assertEquals(usk2.getN(), 5);
WritableMemory mem2 = usk2.getMemory();
assertFalse(mem.isSameResource(mem2));
assertFalse(mem2.isDirect()); //should now be on-heap
final int expectedSize = COMBINED_BUFFER + ((2 * k) << 3);
assertEquals(mem2.getCapacity(), expectedSize);
}
}
代码示例来源:origin: DataSketches/sketches-core
@SuppressWarnings("unused")
@Test
public void checkExtractFlags() {
int bytes = HllSketch.getMaxUpdatableSerializationBytes(4, TgtHllType.HLL_4);
WritableMemory wmem = WritableMemory.allocate(bytes);
Object memObj = wmem.getArray();
long memAdd = wmem.getCumulativeOffset(0L);
HllSketch sk = new HllSketch(4, TgtHllType.HLL_4, wmem);
int flags = extractFlags(wmem);
assertEquals(flags, EMPTY_FLAG_MASK);
}
代码示例来源:origin: DataSketches/sketches-core
private static void putFirst8(final WritableMemory wmem, final byte preInts, final byte lgK,
final byte fiCol, final byte flags, final short seedHash) {
wmem.clear(0L, 4L * preInts);
wmem.putByte(getLoFieldOffset(LoField.PRE_INTS), preInts);
wmem.putByte(getLoFieldOffset(LoField.SER_VERSION), SER_VER);
wmem.putByte(getLoFieldOffset(LoField.FAMILY), (byte) Family.CPC.getID());
wmem.putByte(getLoFieldOffset(LoField.LG_K), lgK);
wmem.putByte(getLoFieldOffset(LoField.FI_COL), fiCol);
wmem.putByte(getLoFieldOffset(LoField.FLAGS), flags);
wmem.putShort(getLoFieldOffset(LoField.SEED_HASH), seedHash);
}
代码示例来源:origin: apache/incubator-druid
@Override
public void init(final ByteBuffer buf, final int position)
{
final WritableMemory mem = getMemory(buf).writableRegion(position, size);
putSketchIntoCache(buf, position, new HllSketch(lgK, tgtHllType, mem));
}
代码示例来源:origin: DataSketches/sketches-core
/**
* Return this sketch as a compressed byte array.
* @return this sketch as a compressed byte array.
*/
public byte[] toByteArray() {
final CompressedState state = CompressedState.compress(this);
final long cap = state.getRequiredSerializedBytes();
final WritableMemory wmem = WritableMemory.allocate((int) cap);
state.exportToMemory(wmem);
return (byte[]) wmem.getArray();
}
代码示例来源:origin: DataSketches/sketches-core
@Test
public void checkEmptyMemory() {
WritableMemory wmem = WritableMemory.allocate(4 * 10);
wmem.putByte(2, (byte) 16); //legal Family
wmem.putByte(5, (byte) (1 << 2)); //select NONE
println(CpcSketch.toString(wmem, false));
}
代码示例来源:origin: DataSketches/sketches-core
private WritableMemory growCombinedMemBuffer(final int itemSpaceNeeded) {
final long memBytes = mem_.getCapacity();
final int needBytes = (itemSpaceNeeded << 3) + COMBINED_BUFFER; //+ preamble + min & max
assert needBytes > memBytes;
memReqSvr = (memReqSvr == null) ? mem_.getMemoryRequestServer() : memReqSvr;
final WritableMemory newMem = memReqSvr.request(needBytes);
mem_.copyTo(0, newMem, 0, memBytes);
memReqSvr.requestClose(mem_, newMem);
return newMem;
}
}
我尝试理解[c代码 -> 汇编]代码 void node::Check( data & _data1, vector& _data2) { -> push ebp -> mov ebp,esp ->
我需要在当前表单(代码)的上下文中运行文本文件中的代码。其中一项要求是让代码创建新控件并将其添加到当前窗体。 例如,在Form1.cs中: using System.Windows.Forms; ..
我有此 C++ 代码并将其转换为 C# (.net Framework 4) 代码。有没有人给我一些关于 malloc、free 和 sprintf 方法的提示? int monate = ee; d
我的网络服务器代码有问题 #include #include #include #include #include #include #include int
给定以下 html 代码,将列表中的第三个元素(即“美丽”一词)以斜体显示的 CSS 代码是什么?当然,我可以给这个元素一个 id 或一个 class,但 html 代码必须保持不变。谢谢
关闭。这个问题不符合Stack Overflow guidelines .它目前不接受答案。 我们不允许提问寻求书籍、工具、软件库等的推荐。您可以编辑问题,以便用事实和引用来回答。 关闭 7 年前。
我试图制作一个宏来避免重复代码和注释。 我试过这个: #define GrowOnPage(any Page, any Component) Component.Width := Page.Surfa
我正在尝试将我的旧 C++ 代码“翻译”成头条新闻所暗示的 C# 代码。问题是我是 C# 中的新手,并不是所有的东西都像 C++ 中那样。在 C++ 中这些解决方案运行良好,但在 C# 中只是不能。我
在 Windows 10 上工作,R 语言的格式化程序似乎没有在 Visual Studio Code 中完成它的工作。我试过R support for Visual Studio Code和 R-T
我正在处理一些报告(计数),我必须获取不同参数的计数。非常简单但乏味。 一个参数的示例查询: qCountsEmployee = ( "select count(*) from %s wher
最近几天我尝试从 d00m 调试网络错误。我开始用尽想法/线索,我希望其他 SO 用户拥有可能有用的宝贵经验。我希望能够提供所有相关信息,但我个人无法控制服务器环境。 整个事情始于用户注意到我们应用程
我有一个 app.js 文件,其中包含如下 dojo amd 模式代码: require(["dojo/dom", ..], function(dom){ dom.byId('someId').i
我对“-gencode”语句中的“code=sm_X”选项有点困惑。 一个例子:NVCC 编译器选项有什么作用 -gencode arch=compute_13,code=sm_13 嵌入库中? 只有
我为我的表格使用 X-editable 框架。 但是我有一些问题。 $(document).ready(function() { $('.access').editable({
我一直在通过本教程学习 flask/python http://blog.miguelgrinberg.com/post/the-flask-mega-tutorial-part-i-hello-wo
我想将 Vim 和 EMACS 用于 CNC、G 代码和 M 代码。 Vim 或 EMACS 是否有任何语法或模式来处理这种类型的代码? 最佳答案 一些快速搜索使我找到了 this vim 和 thi
关闭。这个问题不符合Stack Overflow guidelines .它目前不接受答案。 想改进这个问题?更新问题,使其成为 on-topic对于堆栈溢出。 7年前关闭。 Improve this
这个问题在这里已经有了答案: Enabling markdown highlighting in Vim (5 个回答) 6年前关闭。 当我在 Vim 中编辑包含 Markdown 代码的 READM
我正在 Swift3 iOS 中开发视频应用程序。基本上我必须将视频 Assets 和音频与淡入淡出效果合并为一个并将其保存到 iPhone 画廊。为此,我使用以下方法: private func d
pipeline { agent any stages { stage('Build') { steps { e
我是一名优秀的程序员,十分优秀!