进程间通信(IPC)管理器,帮助创建用于在进程之间发送和接收消息的命令结构。
ipc-mngr的Python项目详细描述
进程间通信(IPC)管理器,帮助创建用于在进程之间发送和接收消息的命令结构。
简单的侦听器/客户端
# main.pyimportipc_mngrdefmsg_handler(sock,cmd):"""Handle received commands. Args: sock (multiprocessing.connection.Client): Client socket that received the command. cmd (object): Command object that was received. """print('Received Command:',cmd)listener=ipc_mngr.Listener(('127.0.0.1',8111),authkey='12345')listener.msg_handler=msg_handlerprint("listening ...")listener.listen()# Listen forever
# send_cmd.pyimportipc_mngrwithipc_mngr.Client(('127.0.0.1',8111),authkey='12345')asclient:# Send the commandclient.send("Hello World!")
计划示例
有关如何将其用作永久作业计划程序的信息,请参阅tests/schedule\u run directory。
流音频示例
有关如何使用streamer和streamclient类,请参阅tests/stream_audio目录。
importipc_mngrwithipc_mngr.Streamer(('127.0.0.1',8222),authkey='12345')asstreamer:whileTrue:streamer.broadcast(1)# streamer.stream(1)
importipc_mngrimporttimeSECONDS=5data=[]defsave_data(client,value):data.append(value)withipc_mngr.StreamClient(('127.0.0.1',8222),authkey='12345')asclient:start=time.time()client.stream_handler=save_data# Save data for 5 secondswhiletime.time()-start<SECONDS:time.sleep(1)print('Collected {} samples'.format(len(data)))