最新消息:XAMPP默认安装之后是很不安全的,我们只需要点击左方菜单的 "安全"选项,按照向导操作即可完成安全设置。

[C++] nanomsg Hello World!

XAMPP下载 admin 2823浏览 0评论

前言
nanomsg的前身是ZeroMQ。本人也是先接觸到ZeroMQ,畢竟ZeroMQ相關資源豐富,較易上手。官方提供了很好的解釋兩者之間的差異(Differences between nanomsg and ZeroMQ)。

無痛從ZeroMQ轉換至nanomsg
由於nanomsg的sample code整理較少,故引用ZeroMQ範例,並改成nanomsg。

//  Hello World server
#include <stdio.h>
#include <thread>
#include “nn.h”
#include “reqrep.h”

int main(void)
{
int responder = nn_socket(AF_SP, NN_REP);
int rc = nn_bind(responder, “tcp://127.0.0.1:5555”);
if (rc < 0) exit(1);

while (1) {
char buffer[10];
nn_recv(responder, buffer, 10, 0);
printf(“Received Hello\n”);
std::this_thread::sleep_for(std::chrono::milliseconds(1));
nn_send(responder, “World”, 5, 0);
}
return 0;
}
//  Hello World client
#include <stdio.h>
#include “nn.h”
#include “reqrep.h”

int main(void)
{
printf(“Connecting to hello world server\n”);
int requester = nn_socket(AF_SP, NN_REQ);
int rc = nn_connect(requester, “tcp://127.0.0.1:5555”);

for (int i = 0; i < 10; ++i) {
char buffer[10];
printf(“Sending Hello %d\n”, i);
nn_send(requester, “Hello”, 5, 0);
nn_recv(requester, buffer, 10, 0);
printf(“Received World %d\n”, i);
}
nn_close(requester);
return 0;
}
比較後可以發現,API其實很好置換。

QQ截图20180907165528

转载请注明:XAMPP中文组官网 » [C++] nanomsg Hello World!

您必须 登录 才能发表评论!