-
-
Notifications
You must be signed in to change notification settings - Fork 214
/
Copy pathmonitoring.po
284 lines (232 loc) · 8.79 KB
/
monitoring.po
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
# Copyright (C) 2001-2024, Python Software Foundation
# This file is distributed under the same license as the Python package.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: Python 3.13\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2024-10-22 00:13+0000\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\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"
#: ../../c-api/monitoring.rst:6
msgid "Monitoring C API"
msgstr "監控 C API"
#: ../../c-api/monitoring.rst:8
msgid "Added in version 3.13."
msgstr "於 3.13 版本中新增。"
#: ../../c-api/monitoring.rst:10
msgid ""
"An extension may need to interact with the event monitoring system. "
"Subscribing to events and registering callbacks can be done via the Python "
"API exposed in :mod:`sys.monitoring`."
msgstr ""
#: ../../c-api/monitoring.rst:15
msgid "Generating Execution Events"
msgstr ""
#: ../../c-api/monitoring.rst:17
msgid ""
"The functions below make it possible for an extension to fire monitoring "
"events as it emulates the execution of Python code. Each of these functions "
"accepts a ``PyMonitoringState`` struct which contains concise information "
"about the activation state of events, as well as the event arguments, which "
"include a ``PyObject*`` representing the code object, the instruction offset "
"and sometimes additional, event-specific arguments (see :mod:`sys."
"monitoring` for details about the signatures of the different event "
"callbacks). The ``codelike`` argument should be an instance of :class:`types."
"CodeType` or of a type that emulates it."
msgstr ""
#: ../../c-api/monitoring.rst:27
msgid ""
"The VM disables tracing when firing an event, so there is no need for user "
"code to do that."
msgstr ""
#: ../../c-api/monitoring.rst:30
msgid ""
"Monitoring functions should not be called with an exception set, except "
"those listed below as working with the current exception."
msgstr ""
#: ../../c-api/monitoring.rst:35
msgid ""
"Representation of the state of an event type. It is allocated by the user "
"while its contents are maintained by the monitoring API functions described "
"below."
msgstr ""
#: ../../c-api/monitoring.rst:39
msgid ""
"All of the functions below return 0 on success and -1 (with an exception "
"set) on error."
msgstr ""
#: ../../c-api/monitoring.rst:41
msgid "See :mod:`sys.monitoring` for descriptions of the events."
msgstr "關於事件的敘述請見 :mod:`sys.monitoring`。"
#: ../../c-api/monitoring.rst:45
msgid "Fire a ``PY_START`` event."
msgstr "發出一個 ``PY_START`` 事件。"
#: ../../c-api/monitoring.rst:50
msgid "Fire a ``PY_RESUME`` event."
msgstr "發出一個 ``PY_RESUME`` 事件。"
#: ../../c-api/monitoring.rst:55
msgid "Fire a ``PY_RETURN`` event."
msgstr "發出一個 ``PY_RETURN`` 事件。"
#: ../../c-api/monitoring.rst:60
msgid "Fire a ``PY_YIELD`` event."
msgstr "發出一個 ``PY_YIELD`` 事件。"
#: ../../c-api/monitoring.rst:65
msgid "Fire a ``CALL`` event."
msgstr "發出一個 ``CALL`` 事件。"
#: ../../c-api/monitoring.rst:70
msgid "Fire a ``LINE`` event."
msgstr "發出一個 ``LINE`` 事件。"
#: ../../c-api/monitoring.rst:75
msgid "Fire a ``JUMP`` event."
msgstr "發出一個 ``JUMP`` 事件。"
#: ../../c-api/monitoring.rst:80
msgid "Fire a ``BRANCH`` event."
msgstr "發出一個 ``BRANCH`` 事件。"
#: ../../c-api/monitoring.rst:85
msgid "Fire a ``C_RETURN`` event."
msgstr "發出一個 ``C_RETURN`` 事件。"
#: ../../c-api/monitoring.rst:90
msgid ""
"Fire a ``PY_THROW`` event with the current exception (as returned by :c:func:"
"`PyErr_GetRaisedException`)."
msgstr ""
#: ../../c-api/monitoring.rst:96
msgid ""
"Fire a ``RAISE`` event with the current exception (as returned by :c:func:"
"`PyErr_GetRaisedException`)."
msgstr ""
#: ../../c-api/monitoring.rst:102
msgid ""
"Fire a ``C_RAISE`` event with the current exception (as returned by :c:func:"
"`PyErr_GetRaisedException`)."
msgstr ""
#: ../../c-api/monitoring.rst:108
msgid ""
"Fire a ``RERAISE`` event with the current exception (as returned by :c:func:"
"`PyErr_GetRaisedException`)."
msgstr ""
#: ../../c-api/monitoring.rst:114
msgid ""
"Fire an ``EXCEPTION_HANDLED`` event with the current exception (as returned "
"by :c:func:`PyErr_GetRaisedException`)."
msgstr ""
#: ../../c-api/monitoring.rst:120
msgid ""
"Fire a ``PY_UNWIND`` event with the current exception (as returned by :c:"
"func:`PyErr_GetRaisedException`)."
msgstr ""
#: ../../c-api/monitoring.rst:126
msgid ""
"Fire a ``STOP_ITERATION`` event. If ``value`` is an instance of :exc:"
"`StopIteration`, it is used. Otherwise, a new :exc:`StopIteration` instance "
"is created with ``value`` as its argument."
msgstr ""
#: ../../c-api/monitoring.rst:131
msgid "Managing the Monitoring State"
msgstr ""
#: ../../c-api/monitoring.rst:133
msgid ""
"Monitoring states can be managed with the help of monitoring scopes. A scope "
"would typically correspond to a python function."
msgstr ""
#: ../../c-api/monitoring.rst:138
msgid ""
"Enter a monitored scope. ``event_types`` is an array of the event IDs for "
"events that may be fired from the scope. For example, the ID of a "
"``PY_START`` event is the value ``PY_MONITORING_EVENT_PY_START``, which is "
"numerically equal to the base-2 logarithm of ``sys.monitoring.events."
"PY_START``. ``state_array`` is an array with a monitoring state entry for "
"each event in ``event_types``, it is allocated by the user but populated by :"
"c:func:`!PyMonitoring_EnterScope` with information about the activation "
"state of the event. The size of ``event_types`` (and hence also of "
"``state_array``) is given in ``length``."
msgstr ""
#: ../../c-api/monitoring.rst:148
msgid ""
"The ``version`` argument is a pointer to a value which should be allocated "
"by the user together with ``state_array`` and initialized to 0, and then set "
"only by :c:func:`!PyMonitoring_EnterScope` itself. It allows this function "
"to determine whether event states have changed since the previous call, and "
"to return quickly if they have not."
msgstr ""
#: ../../c-api/monitoring.rst:154
msgid ""
"The scopes referred to here are lexical scopes: a function, class or "
"method. :c:func:`!PyMonitoring_EnterScope` should be called whenever the "
"lexical scope is entered. Scopes can be reentered, reusing the same "
"*state_array* and *version*, in situations like when emulating a recursive "
"Python function. When a code-like's execution is paused, such as when "
"emulating a generator, the scope needs to be exited and re-entered."
msgstr ""
#: ../../c-api/monitoring.rst:161
msgid "The macros for *event_types* are:"
msgstr "*event_types* 的巨集有:"
#: ../../c-api/monitoring.rst:169
msgid "Macro"
msgstr "巨集"
#: ../../c-api/monitoring.rst:169
msgid "Event"
msgstr "事件"
#: ../../c-api/monitoring.rst:171
msgid ":monitoring-event:`BRANCH`"
msgstr ":monitoring-event:`BRANCH`"
#: ../../c-api/monitoring.rst:172
msgid ":monitoring-event:`CALL`"
msgstr ":monitoring-event:`CALL`"
#: ../../c-api/monitoring.rst:173
msgid ":monitoring-event:`C_RAISE`"
msgstr ":monitoring-event:`C_RAISE`"
#: ../../c-api/monitoring.rst:174
msgid ":monitoring-event:`C_RETURN`"
msgstr ":monitoring-event:`C_RETURN`"
#: ../../c-api/monitoring.rst:175
msgid ":monitoring-event:`EXCEPTION_HANDLED`"
msgstr ":monitoring-event:`EXCEPTION_HANDLED`"
#: ../../c-api/monitoring.rst:176
msgid ":monitoring-event:`INSTRUCTION`"
msgstr ":monitoring-event:`INSTRUCTION`"
#: ../../c-api/monitoring.rst:177
msgid ":monitoring-event:`JUMP`"
msgstr ":monitoring-event:`JUMP`"
#: ../../c-api/monitoring.rst:178
msgid ":monitoring-event:`LINE`"
msgstr ":monitoring-event:`LINE`"
#: ../../c-api/monitoring.rst:179
msgid ":monitoring-event:`PY_RESUME`"
msgstr ":monitoring-event:`PY_RESUME`"
#: ../../c-api/monitoring.rst:180
msgid ":monitoring-event:`PY_RETURN`"
msgstr ":monitoring-event:`PY_RETURN`"
#: ../../c-api/monitoring.rst:181
msgid ":monitoring-event:`PY_START`"
msgstr ":monitoring-event:`PY_START`"
#: ../../c-api/monitoring.rst:182
msgid ":monitoring-event:`PY_THROW`"
msgstr ":monitoring-event:`PY_THROW`"
#: ../../c-api/monitoring.rst:183
msgid ":monitoring-event:`PY_UNWIND`"
msgstr ":monitoring-event:`PY_UNWIND`"
#: ../../c-api/monitoring.rst:184
msgid ":monitoring-event:`PY_YIELD`"
msgstr ":monitoring-event:`PY_YIELD`"
#: ../../c-api/monitoring.rst:185
msgid ":monitoring-event:`RAISE`"
msgstr ":monitoring-event:`RAISE`"
#: ../../c-api/monitoring.rst:186
msgid ":monitoring-event:`RERAISE`"
msgstr ":monitoring-event:`RERAISE`"
#: ../../c-api/monitoring.rst:187
msgid ":monitoring-event:`STOP_ITERATION`"
msgstr ":monitoring-event:`STOP_ITERATION`"
#: ../../c-api/monitoring.rst:192
msgid ""
"Exit the last scope that was entered with :c:func:`!PyMonitoring_EnterScope`."
msgstr ""