-
-
Notifications
You must be signed in to change notification settings - Fork 404
Expand file tree
/
Copy pathrefcounting.po
More file actions
396 lines (346 loc) · 15.4 KB
/
refcounting.po
File metadata and controls
396 lines (346 loc) · 15.4 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
384
385
386
387
388
389
390
391
392
393
394
395
396
# 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: 2026-02-26 18:44-0300\n"
"PO-Revision-Date: 2025-05-16 20:01+0200\n"
"Last-Translator: Marcos Medrano <marcosmedrano0@gmail.com>\n"
"Language: es\n"
"Language-Team: python-doc-es\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: Babel 2.18.0\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:28
msgid ""
"On :term:`free threaded <free threading>` builds of Python, returning 1 "
"isn't sufficient to determine if it's safe to treat *o* as having no access "
"by other threads. Use :c:func:`PyUnstable_Object_IsUniquelyReferenced` for "
"that instead."
msgstr ""
#: ../Doc/c-api/refcounting.rst:33
msgid ""
"See also the function :c:func:"
"`PyUnstable_Object_IsUniqueReferencedTemporary()`."
msgstr ""
#: ../Doc/c-api/refcounting.rst:35
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:38
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:44
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:46
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:49 ../Doc/c-api/refcounting.rst:62
#: ../Doc/c-api/refcounting.rst:128
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:53 ../Doc/c-api/refcounting.rst:77
#: ../Doc/c-api/refcounting.rst:156
msgid "Immortal objects are not modified."
msgstr "Los objetos inmortales no se modifican."
#: ../Doc/c-api/refcounting.rst:59
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:64
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:68
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:70
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:73
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:83
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:86
msgid "See also :c:func:`Py_XNewRef`."
msgstr "Ver también :c:func:`Py_XNewRef`."
#: ../Doc/c-api/refcounting.rst:91
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:94
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:97
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:100
msgid "For example::"
msgstr "Por ejemplo::"
#: ../Doc/c-api/refcounting.rst:102
msgid ""
"Py_INCREF(obj);\n"
"self->attr = obj;"
msgstr ""
"Py_INCREF(obj);\n"
"self->attr = obj;"
#: ../Doc/c-api/refcounting.rst:105
msgid "can be written as::"
msgstr "puede ser escrito como::"
#: ../Doc/c-api/refcounting.rst:107
msgid "self->attr = Py_NewRef(obj);"
msgstr "self->attr = Py_NewRef(obj);"
#: ../Doc/c-api/refcounting.rst:109
msgid "See also :c:func:`Py_INCREF`."
msgstr "Ver también :c:func:`Py_INCREF`."
#: ../Doc/c-api/refcounting.rst:116
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:118
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:125
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:130
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:135
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:138
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:141
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:147
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:162
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:169
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:177
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:180
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:187
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:194
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:201
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:204
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:206
msgid ""
"Py_DECREF(dst);\n"
"dst = src;"
msgstr ""
"Py_DECREF(dst);\n"
"dst = src;"
#: ../Doc/c-api/refcounting.rst:209
msgid "The safe way is::"
msgstr "La forma segura es::"
#: ../Doc/c-api/refcounting.rst:211
msgid "Py_SETREF(dst, src);"
msgstr "Py_SETREF(dst, src);"
#: ../Doc/c-api/refcounting.rst:213
#, fuzzy
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:220 ../Doc/c-api/refcounting.rst:232
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:227
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`."