小编Bla*_*0ut的帖子

将byte []从Java传递给C++

我正在尝试使用SWIG将带有二进制数据和字符串参数的byte []参数从Java传递到C++代码.

这是我的.i和.cpp文件:

my_module.i

%module mymodule
%inline %{
   extern void compress_buffer_to_file(unsigned char *buffer, char *ofname);
%}
Run Code Online (Sandbox Code Playgroud)

my_module.cpp

void compress_buffer_to_file(unsigned char *buffer, char *ofname){
   .........
}
Run Code Online (Sandbox Code Playgroud)

Java包装器中生成的方法:

public static void compress_buffer_to_file(SWIGTYPE_p_unsigned_char buffer, String ofname) {
   my_moduleJNI.compress_buffer_to_file(SWIGTYPE_p_unsigned_char.getCPtr(buffer), ofname);
}
Run Code Online (Sandbox Code Playgroud)

如何定义一个.i文件,它将生成一个Java包装器,让我将byte []而不是SWIGTYPE_p_unsigned_char传递给compress_buffer_to_file方法,或者?如何将Java端的现有byte []与SWIGTYPE_p_unsigned_char相关联?

我试过使用typemap但没有成功.

java swig

9
推荐指数
1
解决办法
1196
查看次数

Apache Ignite索引性能

我有一个带字符串作为键的缓存和TileKey(下面的类)作为值,我注意到当我执行查询(下面)时,即使使用了所有字段,性能也会受到缓存大小的线性影响.在查询中被索引.

这是一个代表性的基准 - 我使用相同的查询(下面)和所有基准测试的相同参数:查询返回(相同)所有基准测试中的30个条目

  • 查询5350条目缓存需要6-7ms
  • 查询10700条目缓存需要8-10ms
  • 查询48150条目缓存需要30-42ms
  • 查询96300条目缓存需要50-70ms

我用8gb单节点和4gb 2节点执行了基准测试,结果几乎相同(就查询速度而言相对于缓存大小而言)

我也尝试使用QuerySqlFieldGroup作为第一个组字段使用"time"字段,它应该将结果集减少到所有基准测试中的1000个条目,我不确定这是否是QuerySqlFieldGroup的正确用法.理解它应该主要用于缓存之间的连接查询.

我做错了什么或者这些是使用Ignite索引的预期查询性能?

代码:

String strQuery = "time = ? and zoom = ? and x >= ? and x <= ? and y >= ? and y <= ?";
SqlQuery<String, TileKey> query= new SqlQuery<String, TileKey>(TileKey.class, strQuery);
query.setArgs(time, zoom, xMin,xMax,yMin, yMax);
QueryCursor<Entry<String, TileKey>> tileKeyCursor = tileKeyCache.query(query);
Map<String, TileKey> tileKeyMap = new HashMap<String, TileKey>();
for (Entry<String, TileKey> p : keysCursor) {
    tileKeyMap.put(p.getKey(), p.getValue());
}
Run Code Online (Sandbox Code Playgroud)

缓存配置:

<bean class="org.apache.ignite.configuration.CacheConfiguration">
            <property name="name" value="KeysCache" />
            <property …
Run Code Online (Sandbox Code Playgroud)

gridgain clustered-index ignite

4
推荐指数
1
解决办法
1589
查看次数

标签 统计

clustered-index ×1

gridgain ×1

ignite ×1

java ×1

swig ×1