首页 > 系统服务 > 详细

进程 - 多进程之间的数据隔离问题、使用多进程实现socket服务端的并发效果(三)

时间:2019-05-09 21:24:03      阅读:243      评论:0      收藏:0      [点我收藏+]
# 进程 与 进程之间的数据是隔离的,比如例子两个变量n

import os
from multiprocessing import Process

def func():
global n # 声明了一个全局变量
n = 0 # 重新定义了一个n
print(‘pid : %s‘%os.getpid(),n)

if __name__ == ‘__main__‘:
n = 100
p = Process(target=func)
p.start()
p.join()
print(os.getpid(),n)


# 使用多进程实现socket服务端的并发效果
client端
import socket

sk = socket.socket()
sk.connect((‘127.0.0.1‘,8080))
msg = sk.recv(1024).decode(‘utf-8‘)
print(msg)
msg2 = input(‘>>>‘).encode(‘utf-8‘)
sk.send(msg2)
sk.close()

server端
import socket
from multiprocessing import Process
def serve(conn):
ret = ‘你好‘.encode(‘utf-8‘)
conn.send(ret)
msg = conn.recv(1024).decode(‘utf-8‘)
print(msg)
conn.close()

if __name__ == ‘__main__‘ :
sk = socket.socket()
sk.bind((‘127.0.0.1‘,8080))
sk.listen()
try:
while True:
conn,addr = sk.accept()
p = Process(target=serve,args=(conn,))
p.start()
finally:
sk.close()

进程 - 多进程之间的数据隔离问题、使用多进程实现socket服务端的并发效果(三)

原文:https://www.cnblogs.com/mys6/p/10840747.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!