rpclib กำลังมองหาผู้ดูแล
หากคุณกำลังมองหาไลบรารีที่คล้ายกันที่รองรับ JSON-RPC และการดำเนินการ async ลองดูที่ packio
rpclib
เป็นไลบรารี RPC สำหรับ C ++ ซึ่งให้ทั้งการใช้งานไคลเอนต์และเซิร์ฟเวอร์ มันถูกสร้างขึ้นโดยใช้ C++14 สมัยใหม่ และด้วยเหตุนี้จึงต้องมีคอมไพเลอร์ล่าสุด ไฮไลท์หลัก:
# include < iostream >
# include " rpc/server.h "
void foo () {
std::cout << " foo was called! " << std::endl;
}
int main ( int argc, char *argv[]) {
// Creating a server that listens on port 8080
rpc::server srv ( 8080 );
// Binding the name "foo" to free function foo.
// note: the signature is automatically captured
srv. bind ( " foo " , &foo);
// Binding a lambda function to the name "add".
srv. bind ( " add " , []( int a, int b) {
return a + b;
});
// Run the server loop.
srv. run ();
return 0 ;
}
เมื่อเรียกใช้ srv.run()
rpclib
จะเริ่มต้นเซิร์ฟเวอร์ลูปซึ่งจะรับฟังการเชื่อมต่อขาเข้าและพยายามส่งการเรียกไปยังฟังก์ชันที่ถูกผูกไว้ ฟังก์ชั่นถูกเรียกจากเธรดที่มีการเรียก run
นอกจากนี้ยังมี async_run
ที่สร้างเธรดผู้ปฏิบัติงานและส่งคืนทันที
# include < iostream >
# include " rpc/client.h "
int main () {
// Creating a client that connects to the localhost on port 8080
rpc::client client ( " 127.0.0.1 " , 8080 );
// Calling a function with paramters and converting the result to int
auto result = client. call ( " add " , 2 , 3 ). as < int >();
std::cout << " The result is: " << result << std::endl;
return 0 ;
}
คุณสมบัติ 1.0.0 ที่วางแผนไว้ทั้งหมดเสร็จสิ้นและทดสอบแล้ว สถานะปัจจุบันพร้อมสำหรับการผลิต
รายการนี้ได้รับการอัปเดตเมื่อฉันทราบเกี่ยวกับผู้คนที่ใช้ห้องสมุดมากขึ้น แจ้งให้เราทราบหากคุณไม่ต้องการให้โครงการของคุณแสดงอยู่ที่นี่
rpclib
สร้างขึ้นจากความพยายามของโปรเจ็กต์ C++ ที่ยอดเยี่ยม โดยไม่มีลำดับใดเป็นพิเศษ:
fmtlib
โดย Victor Zverovich (เว็บไซต์)ตะโกนไปที่