更改线程中的列表

时间:2016-08-20 14:34:38

标签: python multithreading list sockets

我有msg列表和套接字列表,我想在2个线程之间进行更改,以便可以更改它,并且两者都可以使用新线程。 代码是聊天服务器,超过2个客户端可以连接并相互通信 这是代码:

import threading
import socket
import time
global Clients
global MsgQue
def inputmsg():
  while 1:
        try:
            Clients.append(server.accept())
        except socket.error:
            print("No new Socket")
        for cli in Clients:
            try:
                MsgQue.append(cli[0].recv(4096))
            except socket.error:
                print("Warning no input")
def outputmsg():
   for cli in Clients:
       if(MsgQue):
          cli[0].send(MsgQue[0])
          MsgQue.pop(0)

threads = []
server = socket.socket()
host = "127.0.0.1"
port = 1212
server.bind((host,port))
server.setblocking(0)
server.listen(5)
Clients = []
MsgQue = []
threading._start_new_thread(inputmsg,())
threading._start_new_thread(outputmsg,())
while 1:
    if( 1 == 4):
        print ("WTF")

0 个答案:

没有答案