2016-09-25 42 views
0

我有一個微調就在這裏:如何在等待socket.accept時使用微調器?

spinner = itertools.cycle(['-', '/', '|', '\\']) 
while True: 
    sys.stdout.write(spinner.next()) 
    sys.stdout.flush() 
    sys.stdout.write('\b') 
    time.sleep(0.1) 

我堅持我的代碼

server = socket.socket(socket.AF_INET, socket.SOCK_STREAM) 
server.bind((target,port)) 
server.listen(10) 
print "Waiting for a client!" 
client, addr = server.accept() 

我不知道在哪裏,我必須使用什麼樣的條件,但我知道如何實現一個微調。我希望我的"Waiting for a client"向用戶說明它正在等待。我想到了一個微調。

+0

它是下一行可能需要一些時間的「接受」功能嗎?由於它似乎沒有「我等待」回調,因此您需要一個單獨的線程在其工作時執行任何操作。 – usr2564301

+0

是的。我會嘗試線程,也許我可以讓它工作 – octy

回答

0

在循環調用accept()之前,您應該設置超時時間。看到這裏:python socket object accept time out關於如何的細節,但想法是試圖接受一個新的連接說0.1秒,然後碰撞微調,然後重複。