rest_rpc
rest_rpc copied to clipboard
modern C++(C++11), simple, easy to use rpc framework
当客户端同步调用超时,抛出 std::out_of_range("timeout or deferred") 之前,并未从 future_map_ 中擦除相应的 promise 对象?
错误提示如下: CMake Error at /usr/share/cmake-3.16/Modules/FindPackageHandleStandardArgs.cmake:146 (message): Could NOT find JNI (missing: JAVA_AWT_LIBRARY JAVA_JVM_LIBRARY JAVA_INCLUDE_PATH JAVA_INCLUDE_PATH2 JAVA_AWT_INCLUDE_PATH) 但是我java确实是安装了 带上路径也不行
例如 `struct person{ string name; int age; }; void test_person(person& per) { per.name = "aaa"; }` 请问这种情况是否支持? 在librpc中可以使用 person& test_person(person& per) { return per;}来完成
比如use_asio.hpp中直接使用using namespace boost; 与opencv一起使用是,会提示'log': ambiguous symbol错误。
哪位大佬有时间麻烦处理一下: 1.代码中注释太少,清添加一下。 2.消除代码中的警告信息x64模式下 1>E:\git\boost_1_76_0\boost\rest_rpc\rpc_client.hpp(294,12): warning C4244: 'return': conversion from 'uint64_t' to 'long', possible loss of data 1>E:\git\boost_1_76_0\boost\rest_rpc\rpc_client.hpp(588,36): warning C4244: 'argument': conversion from 'uint64_t' to 'long', possible loss of data 
我把它clone我的项目,在ubuntu下想直接使用,刚开始报的错误是msgpack.hpp: No such file or directory,然后sudo apt install libmsgpack-dev后,报的错误为 /rest_rpc/include/rest_rpc/codec.h:38:42: error: no matching function for call to ‘unpack(msgpack::v1::unpacked*, const char*&, size_t&)’ 38 | msgpack::unpack(&msg_, data, length); | ^
*** Error in `./build/service_server': malloc(): smallbin double linked list corrupted: 0x00007f1f0803cf60 *** ====== Backtrace: ========= /lib/x86_64-linux-gnu/libc.so.6(+0x777f5)[0x7f1f26b457f5] /lib/x86_64-linux-gnu/libc.so.6(+0x82679)[0x7f1f26b50679] /lib/x86_64-linux-gnu/libc.so.6(__libc_malloc+0x54)[0x7f1f26b521d4] /usr/lib/x86_64-linux-gnu/libstdc++.so.6(_Znwm+0x15)[0x7f1f27156055] /home/zhou/work/bz_robot2/build/libbz_robot2_lib.so(_ZNSt7promiseIN8rest_rpc10req_resultEEC1Ev+0x3c)[0x7f1f27e5c2c4] /home/zhou/work/bz_robot2/build/libbz_robot2_lib.so(_ZN9__gnu_cxx13new_allocatorISt7promiseIN8rest_rpc10req_resultEEE9constructIS4_JEEEvPT_DpOT0_+0x36)[0x7f1f27e5a6ac] /home/zhou/work/bz_robot2/build/libbz_robot2_lib.so(_ZNSt16allocator_traitsISaISt7promiseIN8rest_rpc10req_resultEEEE9constructIS3_JEEEvRS4_PT_DpOT0_+0x23)[0x7f1f27e57865] /home/zhou/work/bz_robot2/build/libbz_robot2_lib.so(_ZNSt23_Sp_counted_ptr_inplaceISt7promiseIN8rest_rpc10req_resultEESaIS3_ELN9__gnu_cxx12_Lock_policyE2EEC1IJEEES4_DpOT_+0x92)[0x7f1f27e54554] /home/zhou/work/bz_robot2/build/libbz_robot2_lib.so(_ZNSt14__shared_countILN9__gnu_cxx12_Lock_policyE2EEC1ISt7promiseIN8rest_rpc10req_resultEESaIS7_EJEEESt19_Sp_make_shared_tagPT_RKT0_DpOT1_+0xaf)[0x7f1f27e5098b] /home/zhou/work/bz_robot2/build/libbz_robot2_lib.so(_ZNSt12__shared_ptrISt7promiseIN8rest_rpc10req_resultEELN9__gnu_cxx12_Lock_policyE2EEC1ISaIS3_EJEEESt19_Sp_make_shared_tagRKT_DpOT0_+0x3c)[0x7f1f27e4cab0] /home/zhou/work/bz_robot2/build/libbz_robot2_lib.so(_ZNSt10shared_ptrISt7promiseIN8rest_rpc10req_resultEEEC2ISaIS3_EJEEESt19_Sp_make_shared_tagRKT_DpOT0_+0x28)[0x7f1f27e48576] /home/zhou/work/bz_robot2/build/libbz_robot2_lib.so(_ZSt15allocate_sharedISt7promiseIN8rest_rpc10req_resultEESaIS3_EJEESt10shared_ptrIT_ERKT0_DpOT1_+0x37)[0x7f1f27e446ae] /home/zhou/work/bz_robot2/build/libbz_robot2_lib.so(_ZSt11make_sharedISt7promiseIN8rest_rpc10req_resultEEJEESt10shared_ptrIT_EDpOT0_+0x3b)[0x7f1f27e3fc8b] /home/zhou/work/bz_robot2/build/libbz_robot2_lib.so(_ZN8rest_rpc10rpc_client10async_callILNS_9CallModelE0EJEEESt6futureINS_10req_resultEERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpOT0_+0x3c)[0x7f1f27e69d92] /home/zhou/work/bz_robot2/build/libbz_robot2_lib.so(_ZN8rest_rpc10rpc_client4callILm5000EN8bz_robot6RetMsgINS2_11GridMapDataEEEJEEENSt9enable_ifIXntsrSt7is_voidIT0_E5valueES8_E4typeERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEDpOT1_+0x43)[0x7f1f27e7ae6d]...
相关讨论文档: https://docs.google.com/document/d/1TyEcOcA7GssVZXx_XYPUplmBTzSihC7LgbIvolQK7Ts/edit#heading=h.8d5y2e9o0956 - [x] 开发版本的Java Client支持 #26 - [ ] 支持多线程. - [ ] 优化API - [ ] 支持丰富的基本类型 - [x] 支持自定义类对象参数 - [x] 同步客户端
可以对接metric显示rpc的统计信息。