-
-
Notifications
You must be signed in to change notification settings - Fork 405
Expand file tree
/
Copy pathrefcounting.po
More file actions
383 lines (335 loc) · 15 KB
/
refcounting.po
File metadata and controls
383 lines (335 loc) · 15 KB
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
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
# Copyright (C) 2001-2020, Python Software Foundation
# This file is distributed under the same license as the Python package.
# Maintained by the python-doc-es workteam.
# docs-es@python.org /
# https://mail.python.org/mailman3/lists/docs-es.python.org/
# Check https://github.com/python/python-docs-es/blob/3.8/TRANSLATORS to
# get the list of volunteers
#
msgid ""
msgstr ""
"Project-Id-Version: Python 3.8\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2024-11-21 16:38-0300\n"
"PO-Revision-Date: 2025-05-16 20:01+0200\n"
"Last-Translator: Marcos Medrano <marcosmedrano0@gmail.com>\n"
"Language-Team: python-doc-es\n"
"Language: es\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"Generated-By: Babel 2.16.0\n"
"X-Generator: Poedit 3.6\n"
#: ../Doc/c-api/refcounting.rst:8
msgid "Reference Counting"
msgstr "Conteo de referencias"
#: ../Doc/c-api/refcounting.rst:10
msgid ""
"The functions and macros in this section are used for managing reference "
"counts of Python objects."
msgstr ""
"Las funciones y macros de esta sección se utilizan para administrar conteos "
"de referencia de objetos en Python."
#: ../Doc/c-api/refcounting.rst:16
msgid "Get the reference count of the Python object *o*."
msgstr "Obtiene el recuento de referencias para el objeto de Python *o*."
#: ../Doc/c-api/refcounting.rst:18
msgid ""
"Note that the returned value may not actually reflect how many references to "
"the object are actually held. For example, some objects "
"are :term:`immortal` and have a very high refcount that does not reflect the "
"actual number of references. Consequently, do not rely on the returned "
"value to be accurate, other than a value of 0 or 1."
msgstr ""
"Ten cuenta que el valor devuelto puede que no reflejar cuantas referencias "
"al objecto existen realmente. Por ejemplo, algunos objetos "
"son :term:`immortal` y tienen un refcount muy alto que no refleja el número "
"real de referencias. Por lo tanto, no confíes en que el valor devuelto sea "
"preciso, salvo cuando sea 0 o 1."
#: ../Doc/c-api/refcounting.rst:24
msgid ""
"Use the :c:func:`Py_SET_REFCNT()` function to set an object reference count."
msgstr ""
"Usa la función :c:func:`Py_SET_REFCNT()` para establecer la cuenta de "
"referencias de un objeto."
#: ../Doc/c-api/refcounting.rst:26
msgid ":c:func:`Py_REFCNT()` is changed to the inline static function."
msgstr ":c:func:`Py_REFCNT()` se convierte en una función estática en línea."
#: ../Doc/c-api/refcounting.rst:29
msgid "The parameter type is no longer :c:expr:`const PyObject*`."
msgstr "El tipo de parámetro ya no es :c:expr:`const PyObject*`."
#: ../Doc/c-api/refcounting.rst:35
msgid "Set the object *o* reference counter to *refcnt*."
msgstr "Establece la cuenta de referencias del objeto *o* al valor *refcnt*."
#: ../Doc/c-api/refcounting.rst:37
msgid ""
"On :ref:`Python build with Free Threading <free-threading-build>`, if "
"*refcnt* is larger than ``UINT32_MAX``, the object is made :term:`immortal`."
msgstr ""
"En :ref:`compilación de Python con Free Threading <free-threading-build>`, "
"si *refcnt* es mas mayor que ``UINT32_MAX``, el objeto se convierte "
"en :term:`immortal`."
#: ../Doc/c-api/refcounting.rst:40 ../Doc/c-api/refcounting.rst:53
#: ../Doc/c-api/refcounting.rst:119
msgid "This function has no effect on :term:`immortal` objects."
msgstr "Esta función no afecta a los objetos :term:`immortal`."
#: ../Doc/c-api/refcounting.rst:44 ../Doc/c-api/refcounting.rst:68
#: ../Doc/c-api/refcounting.rst:147
msgid "Immortal objects are not modified."
msgstr "Los objetos inmortales no se modifican."
#: ../Doc/c-api/refcounting.rst:50
msgid ""
"Indicate taking a new :term:`strong reference` to object *o*, indicating it "
"is in use and should not be destroyed."
msgstr ""
"Indica tomar una nueva :term:`strong reference` al objeto *o*, lo que indica "
"que está en uso y no debe ser destruido."
#: ../Doc/c-api/refcounting.rst:55
msgid ""
"This function is usually used to convert a :term:`borrowed reference` to "
"a :term:`strong reference` in-place. The :c:func:`Py_NewRef` function can be "
"used to create a new :term:`strong reference`."
msgstr ""
"Esta función se usa generalmente para convertir un :term:`borrowed "
"reference` en un :term:`strong reference` en su lugar. La "
"función :c:func:`Py_NewRef` se puede utilizar para crear un "
"nuevo :term:`strong reference`."
#: ../Doc/c-api/refcounting.rst:59
msgid "When done using the object, release is by calling :c:func:`Py_DECREF`."
msgstr ""
"Cuando se termine de usar el objeto, se libera llamando "
"a :c:func:`Py_DECREF`."
#: ../Doc/c-api/refcounting.rst:61
msgid ""
"The object must not be ``NULL``; if you aren't sure that it isn't ``NULL``, "
"use :c:func:`Py_XINCREF`."
msgstr ""
"El objeto no debe ser ``NULL``; si no está seguro de que no sea ``NULL``, "
"use :c:func:`Py_XINCREF`."
#: ../Doc/c-api/refcounting.rst:64
msgid ""
"Do not expect this function to actually modify *o* in any way. For at "
"least :pep:`some objects <0683>`, this function has no effect."
msgstr ""
"No esperes que esta función modifique realmente *o* de ninguna manera. Al "
"menos para :pep:`algunos objetos <0683>`, esta función no tiene ningún efecto."
#: ../Doc/c-api/refcounting.rst:74
msgid ""
"Similar to :c:func:`Py_INCREF`, but the object *o* can be ``NULL``, in which "
"case this has no effect."
msgstr ""
"Similar a :c:func:`Py_INCREF`, pero el objeto *o* puede ser ``NULL``, en "
"cuyo caso esto no tiene efecto."
#: ../Doc/c-api/refcounting.rst:77
msgid "See also :c:func:`Py_XNewRef`."
msgstr "Ver también :c:func:`Py_XNewRef`."
#: ../Doc/c-api/refcounting.rst:82
msgid ""
"Create a new :term:`strong reference` to an object: call :c:func:`Py_INCREF` "
"on *o* and return the object *o*."
msgstr ""
"Crea una nueva :term:`strong reference` a un objeto: llama "
"a :c:func:`Py_INCREF` sobre *o* y devuelve el objeto *o*."
#: ../Doc/c-api/refcounting.rst:85
msgid ""
"When the :term:`strong reference` is no longer needed, :c:func:`Py_DECREF` "
"should be called on it to release the reference."
msgstr ""
"Cuando la :term:`strong reference` ya no sea necesaria, se debe llamar "
"a :c:func:`Py_DECREF` para disminuir el recuento de referencias del objeto."
#: ../Doc/c-api/refcounting.rst:88
msgid ""
"The object *o* must not be ``NULL``; use :c:func:`Py_XNewRef` if *o* can be "
"``NULL``."
msgstr ""
"El objeto *o* no debe ser ``NULL``; use :c:func:`Py_XNewRef` si *o* puede "
"ser ``NULL``."
#: ../Doc/c-api/refcounting.rst:91
msgid "For example::"
msgstr "Por ejemplo::"
#: ../Doc/c-api/refcounting.rst:93
msgid ""
"Py_INCREF(obj);\n"
"self->attr = obj;"
msgstr ""
"Py_INCREF(obj);\n"
"self->attr = obj;"
#: ../Doc/c-api/refcounting.rst:96
msgid "can be written as::"
msgstr "puede ser escrito como::"
#: ../Doc/c-api/refcounting.rst:98
msgid "self->attr = Py_NewRef(obj);"
msgstr "self->attr = Py_NewRef(obj);"
#: ../Doc/c-api/refcounting.rst:100
msgid "See also :c:func:`Py_INCREF`."
msgstr "Ver también :c:func:`Py_INCREF`."
#: ../Doc/c-api/refcounting.rst:107
msgid "Similar to :c:func:`Py_NewRef`, but the object *o* can be NULL."
msgstr "Similar a :c:func:`Py_NewRef`, pero el objeto *o* puede ser NULL."
#: ../Doc/c-api/refcounting.rst:109
msgid "If the object *o* is ``NULL``, the function just returns ``NULL``."
msgstr "Si el objeto *o* es ``NULL``, la función solo retorna ``NULL``."
#: ../Doc/c-api/refcounting.rst:116
msgid ""
"Release a :term:`strong reference` to object *o*, indicating the reference "
"is no longer used."
msgstr ""
"Libera una :term:`strong reference` al objeto *o*, indicando que la "
"referencia ya no se usa."
#: ../Doc/c-api/refcounting.rst:121
msgid ""
"Once the last :term:`strong reference` is released (i.e. the object's "
"reference count reaches 0), the object's type's deallocation function (which "
"must not be ``NULL``) is invoked."
msgstr ""
"Una vez que la última :term:`strong reference` sea liberada (por ejemplo, "
"cuando la cuenta de referencias del objeto llegue a 0), se invoca la función "
"de desasignación del tipo de objeto (la cual no debe ser ``NULL``)."
#: ../Doc/c-api/refcounting.rst:126
msgid ""
"This function is usually used to delete a :term:`strong reference` before "
"exiting its scope."
msgstr ""
"Esta función se usa generalmente para eliminar un :term:`strong reference` "
"antes de salir de su alcance."
#: ../Doc/c-api/refcounting.rst:129
msgid ""
"The object must not be ``NULL``; if you aren't sure that it isn't ``NULL``, "
"use :c:func:`Py_XDECREF`."
msgstr ""
"El objeto no debe ser ``NULL``; si no está seguro de que no sea ``NULL``, "
"use :c:func:`Py_XINCREF`."
#: ../Doc/c-api/refcounting.rst:132
msgid ""
"Do not expect this function to actually modify *o* in any way. For at "
"least :pep:`some objects <683>`, this function has no effect."
msgstr ""
"No esperes que esta función modifique realmente *o* de ninguna manera. Al "
"menos para :pep:`algunos objetos <683>`, esta función no tiene ningún efecto."
#: ../Doc/c-api/refcounting.rst:138
msgid ""
"The deallocation function can cause arbitrary Python code to be invoked "
"(e.g. when a class instance with a :meth:`~object.__del__` method is "
"deallocated). While exceptions in such code are not propagated, the "
"executed code has free access to all Python global variables. This means "
"that any object that is reachable from a global variable should be in a "
"consistent state before :c:func:`Py_DECREF` is invoked. For example, code "
"to delete an object from a list should copy a reference to the deleted "
"object in a temporary variable, update the list data structure, and then "
"call :c:func:`Py_DECREF` for the temporary variable."
msgstr ""
"La función de desasignación puede hacer que se invoque un código arbitrario "
"de Python (por ejemplo, cuando se desasigna una instancia de clase con el "
"método :meth:`~object.__del__`). Mientras las excepciones en dicho código no "
"sean propagadas, el código ejecutado tendrá acceso libre a todas las "
"variables globales de Python. Esto significa que cualquier objeto al que se "
"pueda acceder desde una variable global debería estar en un estado coherente "
"antes de invocar a :c:func:`Py_DECREF`. Por ejemplo, el código para eliminar "
"un objeto de una lista debe copiar una referencia al objeto eliminado en una "
"variable temporal, actualizar la estructura de datos de la lista y luego "
"llamar a :c:func:`Py_DECREF` para la variable temporal."
#: ../Doc/c-api/refcounting.rst:153
msgid ""
"Similar to :c:func:`Py_DECREF`, but the object *o* can be ``NULL``, in which "
"case this has no effect. The same warning from :c:func:`Py_DECREF` applies "
"here as well."
msgstr ""
"Similar a :c:func:`Py_DECREF`, pero el objeto *o* puede ser ``NULL``, en "
"cuyo caso esto no tendría efecto alguno. El mismo aviso "
"de :c:func:`Py_DECREF` aplica aquí también."
#: ../Doc/c-api/refcounting.rst:160
msgid ""
"Release a :term:`strong reference` for object *o*. The object may be "
"``NULL``, in which case the macro has no effect; otherwise the effect is the "
"same as for :c:func:`Py_DECREF`, except that the argument is also set to "
"``NULL``. The warning for :c:func:`Py_DECREF` does not apply with respect "
"to the object passed because the macro carefully uses a temporary variable "
"and sets the argument to ``NULL`` before releasing the reference."
msgstr ""
"Libera una :term:`strong reference` del objeto *o*. El objeto puede ser "
"``NULL``, en cuyo caso el macro no tiene efecto; de lo contrario, el efecto "
"es el mismo que el de :c:func:`Py_DECREF`, excepto que el argumento también "
"se establece en ``NULL``. La advertencia de :c:func:`Py_DECREF` no se aplica "
"en este caso, ya que el macro usa cuidadosamente una variable temporal y "
"asigna ``NULL`` al argumento antes de liberar la referencia."
#: ../Doc/c-api/refcounting.rst:168
msgid ""
"It is a good idea to use this macro whenever releasing a reference to an "
"object that might be traversed during garbage collection."
msgstr ""
"Es buena idea usar este macro al liberar una referencia de un objeto que "
"podría ser recorrido durante la recolección de basura."
#: ../Doc/c-api/refcounting.rst:171
msgid ""
"The macro argument is now only evaluated once. If the argument has side "
"effects, these are no longer duplicated."
msgstr ""
"Ahora, el macro argumento solo se evalúa una vez. Si el argumento tiene "
"efectos secundarios, estos ya no se duplican."
#: ../Doc/c-api/refcounting.rst:178
msgid ""
"Indicate taking a new :term:`strong reference` to object *o*. A function "
"version of :c:func:`Py_XINCREF`. It can be used for runtime dynamic "
"embedding of Python."
msgstr ""
"Indica la toma de una nueva :term:`strong reference` al objeto *o*. Es una "
"versión en forma de función de :c:func:`Py_XINCREF`. Puede utilizarse para "
"la integración dinámica de Python en tiempo de ejecución."
#: ../Doc/c-api/refcounting.rst:185
msgid ""
"Release a :term:`strong reference` to object *o*. A function version "
"of :c:func:`Py_XDECREF`. It can be used for runtime dynamic embedding of "
"Python."
msgstr ""
"Libera una :term:`strong reference` al objeto *o*. Una versión en forma de "
"función de :c:func:`Py_XDECREF`. Puede utilizarse para la integración "
"dinámica de Python en tiempo de ejecución."
#: ../Doc/c-api/refcounting.rst:192
msgid ""
"Macro safely releasing a :term:`strong reference` to object *dst* and "
"setting *dst* to *src*."
msgstr ""
"Un macro que libera de forma segura un :term:`strong reference` al objeto "
"*dst* y establece *dst* al valor *src*."
#: ../Doc/c-api/refcounting.rst:195
msgid "As in case of :c:func:`Py_CLEAR`, \"the obvious\" code can be deadly::"
msgstr ""
"Como en el caso de :c:func:`Py_CLEAR`, el código \"obvio\" puede ser mortal::"
#: ../Doc/c-api/refcounting.rst:197
msgid ""
"Py_DECREF(dst);\n"
"dst = src;"
msgstr ""
"Py_DECREF(dst);\n"
"dst = src;"
#: ../Doc/c-api/refcounting.rst:200
msgid "The safe way is::"
msgstr "La forma segura es::"
#: ../Doc/c-api/refcounting.rst:202
msgid "Py_SETREF(dst, src);"
msgstr "Py_SETREF(dst, src);"
#: ../Doc/c-api/refcounting.rst:204
msgid ""
"That arranges to set *dst* to *src* _before_ releasing the reference to the "
"old value of *dst*, so that any code triggered as a side-effect of *dst* "
"getting torn down no longer believes *dst* points to a valid object."
msgstr ""
"Eso termina asignando *dst* al valor *src* _antes_ de liberar la referencia "
"al valor anterior de *dst*, para que cualquier código ejecutado como efecto "
"secundario de *dst* siendo destruido ya no crea que *dst* señala a un objeto "
"válido."
#: ../Doc/c-api/refcounting.rst:211 ../Doc/c-api/refcounting.rst:223
msgid ""
"The macro arguments are now only evaluated once. If an argument has side "
"effects, these are no longer duplicated."
msgstr ""
"Los macro argumentos ahora solo se evalúan una vez. Si algún argumento tiene "
"efectos secundarios, estos ya no se duplican."
#: ../Doc/c-api/refcounting.rst:218
msgid ""
"Variant of :c:macro:`Py_SETREF` macro that uses :c:func:`Py_XDECREF` instead "
"of :c:func:`Py_DECREF`."
msgstr ""
"Un variante del macro :c:macro:`Py_SETREF` que usa :c:func:`Py_XDECREF` en "
"lugar de :c:func:`Py_DECREF`."