@@ -1,26 +1,28 @@ # SOME DESCRIPTIVE TITLE. # Copyright (C) 2001-2022, Python Software Foundation # This file is distributed under the same license as the Python package. # # Translators: # Adrian Liaw <adrianliaw2000@gmail.com>, 2018 # Matt Wang <mattwang44@gmail.com>, 2022 msgid "" msgstr "" "Project-Id-Version: Python 3.10\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2022-02-19 00:13+0000\n" "PO-Revision-Date:2018-05-23 14:39+0000 \n" "Last-Translator:Adrian Liaw <adrianliaw2000 @gmail.com>\n" "PO-Revision-Date:2022-02-20 18:34+0800 \n" "Last-Translator:Matt Wang <mattwang44 @gmail.com>\n" "Language-Team: Chinese - TAIWAN (https://github.com/python/python-docs-zh-" "tw)\n" "Language: zh_TW\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=1; plural=0;\n" "X-Generator: Poedit 3.0.1\n" #: ../../library/asyncio-queue.rst:7 msgid "Queues" msgstr "" msgstr "佇列 (Queues) " #: ../../library/asyncio-queue.rst:9 msgid "**Source code:** :source:`Lib/asyncio/queues.py`" Expand All @@ -32,78 +34,89 @@ msgid "" "module. Although asyncio queues are not thread-safe, they are designed to " "be used specifically in async/await code." msgstr "" "asyncio 佇列被設計成與 :mod:`queue` 模組類似。儘管 asyncio 佇列不支援執行緒安" "全 (thread-safe),但他們是被設計來專用於 async/await 程式。" #: ../../library/asyncio-queue.rst:17 msgid "" "Note that methods of asyncio queues don't have a *timeout* parameter; use :" "func:`asyncio.wait_for` function to do queue operations with a timeout." msgstr "" "注意 asyncio 的佇列沒有 *timeout* 參數;請使用 :func:`asyncio.wait_for` 函式" "來為佇列新增具有超時 (timeout) 設定的操作。" #: ../../library/asyncio-queue.rst:21 msgid "See also the `Examples`_ section below." msgstr "另請參閱下方\\ `Examples`_\\ 。" msgstr "另請參閱下方 `Examples`_\\ 。" #: ../../library/asyncio-queue.rst:24 msgid "Queue" msgstr "" msgstr "Queue " #: ../../library/asyncio-queue.rst:28 msgid "A first in, first out (FIFO) queue." msgstr "" msgstr "先進先出 (FIFO) 佇列。 " #: ../../library/asyncio-queue.rst:30 msgid "" "If *maxsize* is less than or equal to zero, the queue size is infinite. If " "it is an integer greater than ``0``, then ``await put()`` blocks when the " "queue reaches *maxsize* until an item is removed by :meth:`get`." msgstr "" "如果 *maxsize* 小於或等於零,則佇列尺寸是無限制的。如果是大於 ``0`` 的整數," "則當佇列達到 *maxsize* 時,\\ ``await put()`` 將會阻塞 (block),直到某個元素" "被 :meth:`get` 取出。" #: ../../library/asyncio-queue.rst:35 msgid "" "Unlike the standard library threading :mod:`queue`, the size of the queue is " "always known and can be returned by calling the :meth:`qsize` method." msgstr "" "不像標準函式庫中執行緒類型的 :mod:`queue`\\ ,佇列的尺寸一直是已知的,可以透" "過呼叫 :meth:`qsize` 方法回傳。" #: ../../library/asyncio-queue.rst:39 msgid "Removed the *loop* parameter." msgstr "" msgstr "移除 *loop* 參數。 " #: ../../library/asyncio-queue.rst:43 msgid "This class is :ref:`not thread safe <asyncio-multithreading>`." msgstr "" msgstr "這個類別是\\ :ref:`不支援執行緒安全的 <asyncio-multithreading>`\\ 。 " #: ../../library/asyncio-queue.rst:47 msgid "Number of items allowed in the queue." msgstr "" msgstr "佇列中可存放的元素數量。 " #: ../../library/asyncio-queue.rst:51 msgid "Return ``True`` if the queue is empty, ``False`` otherwise." msgstr "" msgstr "如果佇列為空則回傳 ``True``\\ ,否則回傳 ``False``\\ 。 " #: ../../library/asyncio-queue.rst:55 msgid "Return ``True`` if there are :attr:`maxsize` items in the queue." msgstr "" msgstr "如果有 :attr:`maxsize` 個條目在佇列中,則回傳 ``True``\\ 。 " #: ../../library/asyncio-queue.rst:57 msgid "" "If the queue was initialized with ``maxsize=0`` (the default), then :meth:" "`full()` never returns ``True``." msgstr "" "如果佇列用 ``maxsize=0`` (預設)初始化,則 :meth:`full()` 永遠不會回傳 " "``True``\\ 。" #: ../../library/asyncio-queue.rst:62 msgid "" "Remove and return an item from the queue. If queue is empty, wait until an " "item is available." msgstr "" msgstr "從佇列中刪除並回傳一個元素。如果佇列為空,則持續等待直到佇列中有元素。 " #: ../../library/asyncio-queue.rst:67 msgid "" "Return an item if one is immediately available, else raise :exc:`QueueEmpty`." msgstr "" msgstr "如果佇列內有值則立即回傳佇列中的元素,否則引發 :exc:`QueueEmpty`\\ 。 " #: ../../library/asyncio-queue.rst:72 msgid "Block until all items in the queue have been received and processed." msgstr "" msgstr "持續阻塞直到佇列中所有的元素都被接收和處理完畢。 " #: ../../library/asyncio-queue.rst:74 msgid "" Expand All @@ -113,72 +126,83 @@ msgid "" "complete. When the count of unfinished tasks drops to zero, :meth:`join` " "unblocks." msgstr "" "當條目新增到佇列的時候,未完成任務的計數就會增加。每當一個消耗者 (consumer) " "協程呼叫 :meth:`task_done`\\ ,表示這個條目已經被取回且被它包含的所有工作都已" "完成,未完成任務計數就會減少。當未完成計數降到零的時候,\\ :meth:`join` 阻塞" "會被解除 (unblock)。" #: ../../library/asyncio-queue.rst:82 msgid "" "Put an item into the queue. If the queue is full, wait until a free slot is " "available before adding the item." msgstr "" "將一個元素放進佇列。如果佇列滿了,在新增元素之前,會持續等待直到有空閒插槽 " "(free slot) 能被使用。" #: ../../library/asyncio-queue.rst:87 msgid "Put an item into the queue without blocking." msgstr "" msgstr "不阻塞地將一個元素放入佇列。 " #: ../../library/asyncio-queue.rst:89 msgid "If no free slot is immediately available, raise :exc:`QueueFull`." msgstr "" msgstr "如果沒有立即可用的空閒插槽,引發 :exc:`QueueFull`\\ 。 " #: ../../library/asyncio-queue.rst:93 msgid "Return the number of items in the queue." msgstr "" msgstr "回傳佇列中的元素數量。 " #: ../../library/asyncio-queue.rst:97 msgid "Indicate that a formerly enqueued task is complete." msgstr "" msgstr "表示前面一個排隊的任務已經完成。 " #: ../../library/asyncio-queue.rst:99 msgid "" "Used by queue consumers. For each :meth:`~Queue.get` used to fetch a task, a " "subsequent call to :meth:`task_done` tells the queue that the processing on " "the task is complete." msgstr "" "由佇列消耗者使用。對於每個用於獲取一個任務的 :meth:`~Queue.get`\\ ,接續的 :" "meth:`task_done` 呼叫會告訴佇列這個任務的處理已經完成。" #: ../../library/asyncio-queue.rst:103 msgid "" "If a :meth:`join` is currently blocking, it will resume when all items have " "been processed (meaning that a :meth:`task_done` call was received for every " "item that had been :meth:`~Queue.put` into the queue)." msgstr "" "如果 :meth:`join` 當前正在阻塞,在所有項目都被處理後會解除阻塞(意味著每個" "以 :meth:`~Queue.put` 放進佇列的條目都會收到一個 :meth:`task_done`\\ )。" #: ../../library/asyncio-queue.rst:108 msgid "" "Raises :exc:`ValueError` if called more times than there were items placed " "in the queue." msgstr "" "如果被呼叫的次數多於放入佇列中的項目數量,將引發 :exc:`ValueError`\\ 。" #: ../../library/asyncio-queue.rst:113 msgid "Priority Queue" msgstr "" msgstr "Priority Queue(優先佇列) " #: ../../library/asyncio-queue.rst:117 msgid "" "A variant of :class:`Queue`; retrieves entries in priority order (lowest " "first)." msgstr "" msgstr ":class:`Queue` 的變形;按優先順序取出條目 (最小的先取出)。 " #: ../../library/asyncio-queue.rst:120 msgid "Entries are typically tuples of the form ``(priority_number, data)``." msgstr "" msgstr "條目通常是 ``(priority_number, data)`` 形式的 tuple(元組)。 " #: ../../library/asyncio-queue.rst:125 msgid "LIFO Queue" msgstr "" msgstr "LIFO Queue " #: ../../library/asyncio-queue.rst:129 msgid "" "A variant of :class:`Queue` that retrieves most recently added entries first " "(last in, first out)." msgstr "" msgstr ":class:`Queue` 的變形,先取出最近新增的條目(後進先出)。 " #: ../../library/asyncio-queue.rst:134 msgid "Exceptions" Expand All @@ -188,13 +212,15 @@ msgstr "例外" msgid "" "This exception is raised when the :meth:`~Queue.get_nowait` method is called " "on an empty queue." msgstr "" msgstr "當佇列為空的時候,呼叫 :meth:`~Queue.get_nowait` 方法會引發這個例外。 " #: ../../library/asyncio-queue.rst:144 msgid "" "Exception raised when the :meth:`~Queue.put_nowait` method is called on a " "queue that has reached its *maxsize*." msgstr "" "當佇列中條目數量已經達到它的 *maxsize* 時,呼叫 :meth:`~Queue.put_nowait` 方" "法會引發這個例外。" #: ../../library/asyncio-queue.rst:149 msgid "Examples" Expand All @@ -203,4 +229,4 @@ msgstr "範例" #: ../../library/asyncio-queue.rst:153 msgid "" "Queues can be used to distribute workload between several concurrent tasks::" msgstr "" msgstr "佇列能被用於多個並行任務的工作分配: "