小编nic*_*ang的帖子

为什么 c++11 sleep_for 微秒实际上睡眠毫秒?

我在我的 centos 7 服务器中调用了这个函数。

我发现 std::this_thread::sleep_for(chrono::nanoseconds(1)) 实际上睡了一毫秒,有什么解释吗?我认为这可能是由操作系统设置引起的?

c++ operating-system thread-sleep c++11

5
推荐指数
3
解决办法
1080
查看次数

为什么使用 multiprocessing.Process 运行时 ZeroMQ 无法通信?

请参阅下面的代码:


server.py

import zmq 
import time
from multiprocessing import Process
class A:
  def __init__(self):
    ctx = zmq.Context(1)
    sock = zmq.Socket(ctx, zmq.PUB)
    sock.bind('ipc://test')
    p = Process(target=A.run, args=(sock,))
    p.start()     # Process calls run, but the client can't receive messages
    p.join()      #
    #A.run(sock)  # this one is ok, messages get it to be received

  @staticmethod
  def run(sock):
    while True:
      sock.send('demo'.encode('utf-8'))
      print('sent')
      time.sleep(1)

if __name__ =='__main__':
  a = A()
Run Code Online (Sandbox Code Playgroud)

client.py

import zmq 
ctx=zmq.Context(1)
sock = zmq.Socket(ctx, zmq.SUB)
sock.connect('ipc://test')
sock.setsockopt_string(zmq.SUBSCRIBE, '') 
while True:
  print(sock.recv())
Run Code Online (Sandbox Code Playgroud)

在 …

python zeromq pyzmq python-multiprocessing

5
推荐指数
1
解决办法
1369
查看次数