2013-03-02 38 views
1

假設我有這樣的代碼是什麼event.wait在蟒蛇的返回值()函數

def wait_for_event(e): 
    """Wait for the event to be set before doing anything""" 
    logging.debug('wait_for_event starting') 
    event_is_set = e.wait() 
    logging.debug('event set: %s', event_is_set) 

什麼是e.wait()

返回的值我不明白這一點

有一件事情我也不清楚,事件是如何發送給線程的。

假設我有線程下載每頁上都有管理員姓名的網頁。

現在,這個名字被編輯我的人。

現在我thread 10首先得到了chnage現在我想與新name我的所有線程發送通知,讓他們可以改變他們的代碼

我怎麼能做到這一點

回答

1

由於e.wait()沒有超時,所以該方法始終返回True。這是在documentation闡明:

wait([timeout])

塊,直到內部標誌是真實的。如果 條目的內部標誌爲真,則立即返回。否則,阻塞直到另一個線程調用 set()將該標誌設置爲true,或者直到發生可選的超時。

當超時參數存在而非無時,它應該是一個 浮點數,指定 秒(或其分數)中的操作超時。

該方法在退出時返回內部標誌,所以它總是會返回True,除非給定超時並且操作超時。

+0

這是什麼用途,我的意思是爲什麼我們使用它 – user192362127 2013-03-02 12:18:03

0

wait([timeout])

阻塞直到內部標誌爲真。如果內部標誌在輸入時爲真,則立即返回。否則,阻塞直到另一個線程調用set()將該標誌設置爲true,或者直到發生可選的超時。

當超時參數存在而不是無時,它應該是一個浮點數,指定以秒爲單位的操作超時(或其分數)。

該方法返回退出時的內部標誌,所以它總是會返回True,除非超時並且操作超時

版本2.7中更改:以前,該方法始終返回None。