Pythonプログラム(2.7)でスレッドを作成しようとしましたが、作成時に起動されます。 )属性が呼び出されます。ヘルプは素晴らしいだろう。ここでPythonスレッドが実行時に実行され、実行時に呼び出されない
が私の(サーバー)のコードです:
import sys
import socket
import threading
global connections
connections = []
def srcv(s, conn, data):
while True:
print "Recieving"
#Recieve Strings From Each Connection
for i, n in enumerate(connections):
data.append([connections[1], i.recv(4096)])
#Send String To Each Connection
print "Sending"
for i, n in enumerate(connections):
i.send("{0}: {1}".format(data[n][0], data[n][1]))
def listn(s, conn, data):
s.listen(10)
print "Listening For Connection"
while True:
obj, addr = s.accept()
connections.append([obj, addr])
def start_server():
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
conn = []
data = []
s.bind(("localhost", 12345))
print "Creating Listening Thread"
listen = threading.Thread(target=listn(s,conn,data))
print "Preparing Listening Thread"
listen.start()
print "Starting Listening Thread"
listen.run()
print "Creating Send/Receive Thread"
sandr = threading.Thread(target=srcv(s, conn, data))
print "Preparing Send/Receive Thread"
sandr.start()
print "Connections Now Acceptable"
sandr.run()
if __name__ == '__main__':
sys.exit(start_server())
私のコードは、無秩序/不格好と思われる場合は私に知らせてください、私は一般的なプログラミングに幾分新しいです。
EDIT:
私が遭遇したもう一つの問題は、1の起動時に、他のことができないとして、私は、スレッドの両方を実行できないことです。それはなぜですか、どうすれば修正できますか?
あなたのコッドを投稿することができます。 – amitnair92
@ amitnair92すみません、ごめんなさい。 –