From cb170a3323f176cedb8109dedb040fc56c3d2cee Mon Sep 17 00:00:00 2001 From: Matt Wang Date: Sat, 11 May 2024 23:52:51 +0800 Subject: [PATCH] feat: translate `c-api/perfmaps.po` --- c-api/perfmaps.po | 41 ++++++++++++++++++++++++++++++++--------- 1 file changed, 32 insertions(+), 9 deletions(-) diff --git a/c-api/perfmaps.po b/c-api/perfmaps.po index 55b594aa05..8cd8677692 100644 --- a/c-api/perfmaps.po +++ b/c-api/perfmaps.po @@ -1,17 +1,17 @@ -# SOME DESCRIPTIVE TITLE. -# Copyright (C) 2001-2023, Python Software Foundation +# Copyright (C) 2001-2024, Python Software Foundation # This file is distributed under the same license as the Python package. -# FIRST AUTHOR , YEAR. # -#, fuzzy +# Translators: +# Matt Wang , 2024 msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2023-07-17 17:39+0800\n" -"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" -"Last-Translator: FULL NAME \n" -"Language-Team: LANGUAGE \n" +"PO-Revision-Date: 2024-05-11 14:42+0800\n" +"Last-Translator: Matt Wang \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" @@ -19,7 +19,7 @@ msgstr "" #: ../../c-api/perfmaps.rst:6 msgid "Support for Perf Maps" -msgstr "" +msgstr "對 Perf Map 的支援" #: ../../c-api/perfmaps.rst:8 msgid "" @@ -32,18 +32,27 @@ msgid "" "Perf tool `_." msgstr "" +"在支援的平台上(截至撰寫本文時,僅限 Linux),runtime 可以利用 *perf map 檔案" +"*\\ 使得外部分析工具(例如 `perf `_)可以見到 Python 函式。正在運行的行程可能會在 ``/tmp`` 目錄中建" +"立一個檔案,其中包含可以將一段可執行程式碼對映到名稱的各個條目。此介面在 " +"`Linux Perf 工具的文件 `_\\ 中有" +"被描述。" #: ../../c-api/perfmaps.rst:16 msgid "" "In Python, these helper APIs can be used by libraries and features that rely " "on generating machine code on the fly." msgstr "" +"在 Python 中,這些輔助 API 可供依賴運行期間 (on the fly) 產生機器碼的函式庫和" +"功能使用。" #: ../../c-api/perfmaps.rst:19 msgid "" "Note that holding the Global Interpreter Lock (GIL) is not required for " "these APIs." -msgstr "" +msgstr "請注意,這些 API 不需要持有全域直譯器鎖 (GIL)。" #: ../../c-api/perfmaps.rst:23 msgid "" @@ -54,6 +63,10 @@ msgid "" "`PyUnstable_WritePerfMapEntry` and it will initialize the state on first " "call." msgstr "" +"打開 ``/tmp/perf-$pid.map`` 檔案,除非它已經打開,並建立一個鎖以確保執行緒安" +"全地 (thread-safe) 寫入該檔案(前提是寫入是透過 :c:func:" +"`PyUnstable_WritePerfMapEntry` 完成的)。通常不需要明確地呼叫它;只需使用 :c:" +"func:`PyUnstable_WritePerfMapEntry` 它就會在首次呼叫時初始化狀態。" #: ../../c-api/perfmaps.rst:29 msgid "" @@ -61,12 +74,16 @@ msgid "" "file, or ``-2`` on failure to create a lock. Check ``errno`` for more " "information about the cause of a failure." msgstr "" +"建立/打開 perf map 檔案成功時回傳 ``0``,失敗時回傳 ``-1``,建立鎖時失敗則回" +"傳 ``-2``。檢查 ``errno`` 以獲取造成失敗的資訊。" #: ../../c-api/perfmaps.rst:35 msgid "" "Write one single entry to the ``/tmp/perf-$pid.map`` file. This function is " "thread safe. Here is what an example entry looks like::" msgstr "" +"將單一條目寫入 ``/tmp/perf-$pid.map`` 檔案。此函式是執行緒安全的。以下是範例" +"條目的樣子:" #: ../../c-api/perfmaps.rst:41 msgid "" @@ -74,6 +91,9 @@ msgid "" "if the perf map file is not already opened. Returns ``0`` on success, or the " "same error codes as :c:func:`PyUnstable_PerfMapState_Init` on failure." msgstr "" +"如果尚未開啟 perf map 檔案,將在寫入條目之前呼叫 :c:func:" +"`PyUnstable_PerfMapState_Init`。成功時回傳 ``0``,失敗時傳回與 :c:func:" +"`PyUnstable_PerfMapState_Init` 相同的錯誤碼。" #: ../../c-api/perfmaps.rst:47 msgid "" @@ -82,3 +102,6 @@ msgid "" "general, there shouldn't be a reason to explicitly call this, except to " "handle specific scenarios such as forking." msgstr "" +"關閉由 :c:func:`PyUnstable_PerfMapState_Init` 開啟的 perf map 檔案,這是在直" +"譯器關閉期間由 runtime 本身呼叫的。一般來說,除了處理 forking 等特定場景外," +"不應該明確地呼叫它。"