目前大致的使用情况是使用pollfd,
begin:
nn_rep no
nn_push no
nn_pub can out
nn_req can out
nn_survey can in can out
但是如果没有survey就去recv,会报错EFSM.
使用nn_errno和nn_strerror打印错误信息
NN_SNDBUF就是so_sndbuf
NN_RCVMAXSIZE是设置每个message的最大包大小
NN_SNDTIMEO,NN_RCVTIMEO是nanomsg自己实现的超时机制,利用poll
req rep必须有来有去,如果req不收取结果,直接再send,最后一条消息会覆盖掉之前的消息,
req必须现有send再recv,否则recv出错.
push/pull没有此限制
push可以时client也可以时server