本文主要介紹python中用來實現執行緒間通訊的訊息佇列模組Queue,主要包括:

  • 模組介紹
  • API介紹

一、模組介紹

Queue模組用來實現訊息佇列功能,可以實現執行緒間安全的訊息交換。各個執行緒可以通過呼叫訊息佇列例項對訊息佇列進行操縱。

二、API介紹

該模組包含以下函式:

1.Queue.qsize()

該函式返回訊息佇列的當前空間。

2.Queue.empty()

該函式判斷訊息佇列是否為空,返回True或False。

3.Queue.full()

該函式判斷訊息佇列是否滿,返回True或False。

4.Queue.put(item, block=True, timeout=None)

該函式用來訊息佇列中存放訊息。block引數可以控制是否阻塞,timeout指定阻塞的等待時間。如果不阻塞或者超時,會引起一個full exception。

5.Queue.put_nowait(item)

該函式相當於put(item, False)。

6.Queue.get(block=True, timeout=None)

該函式用於獲取訊息,其他同put相同。

7.Queue.task_done()

該函式接受訊息的執行緒通過呼叫這個函式來說明訊息對應的任務已完成。

8.Queue.join()

該函式呼叫執行緒阻塞直到所有訊息對應的任務已經完成。