forked from AFPy/python-docs-fr
353 lines
13 KiB
Plaintext
353 lines
13 KiB
Plaintext
# SOME DESCRIPTIVE TITLE.
|
|
# Copyright (C) 1990-2016, Python Software Foundation
|
|
# This file is distributed under the same license as the Python package.
|
|
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
|
|
#
|
|
#, fuzzy
|
|
msgid ""
|
|
msgstr ""
|
|
"Project-Id-Version: Python 2.7\n"
|
|
"Report-Msgid-Bugs-To: \n"
|
|
"POT-Creation-Date: 2016-10-30 10:44+0100\n"
|
|
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
|
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
|
"Language-Team: LANGUAGE <LL@li.org>\n"
|
|
"MIME-Version: 1.0\n"
|
|
"Content-Type: text/plain; charset=UTF-8\n"
|
|
"Content-Transfer-Encoding: 8bit\n"
|
|
|
|
#: ../Doc/library/weakref.rst:2
|
|
msgid ":mod:`weakref` --- Weak references"
|
|
msgstr ""
|
|
|
|
#: ../Doc/library/weakref.rst:14
|
|
msgid "**Source code:** :source:`Lib/weakref.py`"
|
|
msgstr "**Code source :** :source:`Lib/weakref.py`"
|
|
|
|
#: ../Doc/library/weakref.rst:18
|
|
msgid ""
|
|
"The :mod:`weakref` module allows the Python programmer to create :dfn:`weak "
|
|
"references` to objects."
|
|
msgstr ""
|
|
|
|
#: ../Doc/library/weakref.rst:24
|
|
msgid ""
|
|
"In the following, the term :dfn:`referent` means the object which is "
|
|
"referred to by a weak reference."
|
|
msgstr ""
|
|
|
|
#: ../Doc/library/weakref.rst:27
|
|
msgid ""
|
|
"A weak reference to an object is not enough to keep the object alive: when "
|
|
"the only remaining references to a referent are weak references, :term:"
|
|
"`garbage collection` is free to destroy the referent and reuse its memory "
|
|
"for something else. A primary use for weak references is to implement "
|
|
"caches or mappings holding large objects, where it's desired that a large "
|
|
"object not be kept alive solely because it appears in a cache or mapping."
|
|
msgstr ""
|
|
|
|
#: ../Doc/library/weakref.rst:34
|
|
msgid ""
|
|
"For example, if you have a number of large binary image objects, you may "
|
|
"wish to associate a name with each. If you used a Python dictionary to map "
|
|
"names to images, or images to names, the image objects would remain alive "
|
|
"just because they appeared as values or keys in the dictionaries. The :"
|
|
"class:`WeakKeyDictionary` and :class:`WeakValueDictionary` classes supplied "
|
|
"by the :mod:`weakref` module are an alternative, using weak references to "
|
|
"construct mappings that don't keep objects alive solely because they appear "
|
|
"in the mapping objects. If, for example, an image object is a value in a :"
|
|
"class:`WeakValueDictionary`, then when the last remaining references to that "
|
|
"image object are the weak references held by weak mappings, garbage "
|
|
"collection can reclaim the object, and its corresponding entries in weak "
|
|
"mappings are simply deleted."
|
|
msgstr ""
|
|
|
|
#: ../Doc/library/weakref.rst:47
|
|
msgid ""
|
|
":class:`WeakKeyDictionary` and :class:`WeakValueDictionary` use weak "
|
|
"references in their implementation, setting up callback functions on the "
|
|
"weak references that notify the weak dictionaries when a key or value has "
|
|
"been reclaimed by garbage collection. Most programs should find that using "
|
|
"one of these weak dictionary types is all they need -- it's not usually "
|
|
"necessary to create your own weak references directly. The low-level "
|
|
"machinery used by the weak dictionary implementations is exposed by the :mod:"
|
|
"`weakref` module for the benefit of advanced uses."
|
|
msgstr ""
|
|
|
|
#: ../Doc/library/weakref.rst:56
|
|
msgid ""
|
|
"Not all objects can be weakly referenced; those objects which can include "
|
|
"class instances, functions written in Python (but not in C), methods (both "
|
|
"bound and unbound), sets, frozensets, file objects, :term:`generator`\\s, "
|
|
"type objects, :class:`DBcursor` objects from the :mod:`bsddb` module, "
|
|
"sockets, arrays, deques, regular expression pattern objects, and code "
|
|
"objects."
|
|
msgstr ""
|
|
|
|
#: ../Doc/library/weakref.rst:62
|
|
msgid "Added support for files, sockets, arrays, and patterns."
|
|
msgstr ""
|
|
|
|
#: ../Doc/library/weakref.rst:65
|
|
msgid "Added support for thread.lock, threading.Lock, and code objects."
|
|
msgstr ""
|
|
|
|
#: ../Doc/library/weakref.rst:68
|
|
msgid ""
|
|
"Several built-in types such as :class:`list` and :class:`dict` do not "
|
|
"directly support weak references but can add support through subclassing::"
|
|
msgstr ""
|
|
|
|
#: ../Doc/library/weakref.rst:78
|
|
msgid ""
|
|
"Other built-in types such as :class:`tuple` and :class:`long` do not support "
|
|
"weak references even when subclassed."
|
|
msgstr ""
|
|
|
|
#: ../Doc/library/weakref.rst:81
|
|
msgid ""
|
|
"Extension types can easily be made to support weak references; see :ref:"
|
|
"`weakref-support`."
|
|
msgstr ""
|
|
|
|
#: ../Doc/library/weakref.rst:87
|
|
msgid ""
|
|
"Return a weak reference to *object*. The original object can be retrieved "
|
|
"by calling the reference object if the referent is still alive; if the "
|
|
"referent is no longer alive, calling the reference object will cause :const:"
|
|
"`None` to be returned. If *callback* is provided and not :const:`None`, and "
|
|
"the returned weakref object is still alive, the callback will be called when "
|
|
"the object is about to be finalized; the weak reference object will be "
|
|
"passed as the only parameter to the callback; the referent will no longer be "
|
|
"available."
|
|
msgstr ""
|
|
|
|
#: ../Doc/library/weakref.rst:95
|
|
msgid ""
|
|
"It is allowable for many weak references to be constructed for the same "
|
|
"object. Callbacks registered for each weak reference will be called from the "
|
|
"most recently registered callback to the oldest registered callback."
|
|
msgstr ""
|
|
|
|
#: ../Doc/library/weakref.rst:99
|
|
msgid ""
|
|
"Exceptions raised by the callback will be noted on the standard error "
|
|
"output, but cannot be propagated; they are handled in exactly the same way "
|
|
"as exceptions raised from an object's :meth:`__del__` method."
|
|
msgstr ""
|
|
|
|
#: ../Doc/library/weakref.rst:103
|
|
msgid ""
|
|
"Weak references are :term:`hashable` if the *object* is hashable. They will "
|
|
"maintain their hash value even after the *object* was deleted. If :func:"
|
|
"`hash` is called the first time only after the *object* was deleted, the "
|
|
"call will raise :exc:`TypeError`."
|
|
msgstr ""
|
|
|
|
#: ../Doc/library/weakref.rst:108
|
|
msgid ""
|
|
"Weak references support tests for equality, but not ordering. If the "
|
|
"referents are still alive, two references have the same equality "
|
|
"relationship as their referents (regardless of the *callback*). If either "
|
|
"referent has been deleted, the references are equal only if the reference "
|
|
"objects are the same object."
|
|
msgstr ""
|
|
|
|
#: ../Doc/library/weakref.rst:113
|
|
msgid ""
|
|
"This is now a subclassable type rather than a factory function; it derives "
|
|
"from :class:`object`."
|
|
msgstr ""
|
|
|
|
#: ../Doc/library/weakref.rst:120
|
|
msgid ""
|
|
"Return a proxy to *object* which uses a weak reference. This supports use "
|
|
"of the proxy in most contexts instead of requiring the explicit "
|
|
"dereferencing used with weak reference objects. The returned object will "
|
|
"have a type of either ``ProxyType`` or ``CallableProxyType``, depending on "
|
|
"whether *object* is callable. Proxy objects are not :term:`hashable` "
|
|
"regardless of the referent; this avoids a number of problems related to "
|
|
"their fundamentally mutable nature, and prevent their use as dictionary "
|
|
"keys. *callback* is the same as the parameter of the same name to the :func:"
|
|
"`ref` function."
|
|
msgstr ""
|
|
|
|
#: ../Doc/library/weakref.rst:132
|
|
msgid ""
|
|
"Return the number of weak references and proxies which refer to *object*."
|
|
msgstr ""
|
|
|
|
#: ../Doc/library/weakref.rst:137
|
|
msgid ""
|
|
"Return a list of all weak reference and proxy objects which refer to "
|
|
"*object*."
|
|
msgstr ""
|
|
|
|
#: ../Doc/library/weakref.rst:142
|
|
msgid ""
|
|
"Mapping class that references keys weakly. Entries in the dictionary will "
|
|
"be discarded when there is no longer a strong reference to the key. This "
|
|
"can be used to associate additional data with an object owned by other parts "
|
|
"of an application without adding attributes to those objects. This can be "
|
|
"especially useful with objects that override attribute accesses."
|
|
msgstr ""
|
|
|
|
#: ../Doc/library/weakref.rst:150
|
|
msgid ""
|
|
"Caution: Because a :class:`WeakKeyDictionary` is built on top of a Python "
|
|
"dictionary, it must not change size when iterating over it. This can be "
|
|
"difficult to ensure for a :class:`WeakKeyDictionary` because actions "
|
|
"performed by the program during iteration may cause items in the dictionary "
|
|
"to vanish \"by magic\" (as a side effect of garbage collection)."
|
|
msgstr ""
|
|
|
|
#: ../Doc/library/weakref.rst:156
|
|
msgid ""
|
|
":class:`WeakKeyDictionary` objects have the following additional methods. "
|
|
"These expose the internal references directly. The references are not "
|
|
"guaranteed to be \"live\" at the time they are used, so the result of "
|
|
"calling the references needs to be checked before being used. This can be "
|
|
"used to avoid creating references that will cause the garbage collector to "
|
|
"keep the keys around longer than needed."
|
|
msgstr ""
|
|
|
|
#: ../Doc/library/weakref.rst:166
|
|
msgid "Return an iterable of the weak references to the keys."
|
|
msgstr ""
|
|
|
|
#: ../Doc/library/weakref.rst:173
|
|
msgid "Return a list of weak references to the keys."
|
|
msgstr ""
|
|
|
|
#: ../Doc/library/weakref.rst:180
|
|
msgid ""
|
|
"Mapping class that references values weakly. Entries in the dictionary will "
|
|
"be discarded when no strong reference to the value exists any more."
|
|
msgstr ""
|
|
|
|
#: ../Doc/library/weakref.rst:185
|
|
msgid ""
|
|
"Caution: Because a :class:`WeakValueDictionary` is built on top of a Python "
|
|
"dictionary, it must not change size when iterating over it. This can be "
|
|
"difficult to ensure for a :class:`WeakValueDictionary` because actions "
|
|
"performed by the program during iteration may cause items in the dictionary "
|
|
"to vanish \"by magic\" (as a side effect of garbage collection)."
|
|
msgstr ""
|
|
|
|
#: ../Doc/library/weakref.rst:191
|
|
msgid ""
|
|
":class:`WeakValueDictionary` objects have the following additional methods. "
|
|
"These method have the same issues as the :meth:`iterkeyrefs` and :meth:"
|
|
"`keyrefs` methods of :class:`WeakKeyDictionary` objects."
|
|
msgstr ""
|
|
|
|
#: ../Doc/library/weakref.rst:198
|
|
msgid "Return an iterable of the weak references to the values."
|
|
msgstr ""
|
|
|
|
#: ../Doc/library/weakref.rst:205
|
|
msgid "Return a list of weak references to the values."
|
|
msgstr ""
|
|
|
|
#: ../Doc/library/weakref.rst:212
|
|
msgid ""
|
|
"Set class that keeps weak references to its elements. An element will be "
|
|
"discarded when no strong reference to it exists any more."
|
|
msgstr ""
|
|
|
|
#: ../Doc/library/weakref.rst:220
|
|
msgid "The type object for weak references objects."
|
|
msgstr ""
|
|
|
|
#: ../Doc/library/weakref.rst:225
|
|
msgid "The type object for proxies of objects which are not callable."
|
|
msgstr ""
|
|
|
|
#: ../Doc/library/weakref.rst:230
|
|
msgid "The type object for proxies of callable objects."
|
|
msgstr ""
|
|
|
|
#: ../Doc/library/weakref.rst:235
|
|
msgid ""
|
|
"Sequence containing all the type objects for proxies. This can make it "
|
|
"simpler to test if an object is a proxy without being dependent on naming "
|
|
"both proxy types."
|
|
msgstr ""
|
|
|
|
#: ../Doc/library/weakref.rst:242
|
|
msgid ""
|
|
"Exception raised when a proxy object is used but the underlying object has "
|
|
"been collected. This is the same as the standard :exc:`ReferenceError` "
|
|
"exception."
|
|
msgstr ""
|
|
|
|
#: ../Doc/library/weakref.rst:249
|
|
msgid ":pep:`205` - Weak References"
|
|
msgstr ""
|
|
|
|
#: ../Doc/library/weakref.rst:249
|
|
msgid ""
|
|
"The proposal and rationale for this feature, including links to earlier "
|
|
"implementations and information about similar features in other languages."
|
|
msgstr ""
|
|
|
|
#: ../Doc/library/weakref.rst:256
|
|
msgid "Weak Reference Objects"
|
|
msgstr "Objets à références faibles"
|
|
|
|
#: ../Doc/library/weakref.rst:258
|
|
msgid ""
|
|
"Weak reference objects have no attributes or methods, but do allow the "
|
|
"referent to be obtained, if it still exists, by calling it:"
|
|
msgstr ""
|
|
|
|
#: ../Doc/library/weakref.rst:271
|
|
msgid ""
|
|
"If the referent no longer exists, calling the reference object returns :"
|
|
"const:`None`:"
|
|
msgstr ""
|
|
|
|
#: ../Doc/library/weakref.rst:278
|
|
msgid ""
|
|
"Testing that a weak reference object is still live should be done using the "
|
|
"expression ``ref() is not None``. Normally, application code that needs to "
|
|
"use a reference object should follow this pattern::"
|
|
msgstr ""
|
|
|
|
#: ../Doc/library/weakref.rst:291
|
|
msgid ""
|
|
"Using a separate test for \"liveness\" creates race conditions in threaded "
|
|
"applications; another thread can cause a weak reference to become "
|
|
"invalidated before the weak reference is called; the idiom shown above is "
|
|
"safe in threaded applications as well as single-threaded applications."
|
|
msgstr ""
|
|
|
|
#: ../Doc/library/weakref.rst:296
|
|
msgid ""
|
|
"Specialized versions of :class:`ref` objects can be created through "
|
|
"subclassing. This is used in the implementation of the :class:"
|
|
"`WeakValueDictionary` to reduce the memory overhead for each entry in the "
|
|
"mapping. This may be most useful to associate additional information with a "
|
|
"reference, but could also be used to insert additional processing on calls "
|
|
"to retrieve the referent."
|
|
msgstr ""
|
|
|
|
#: ../Doc/library/weakref.rst:302
|
|
msgid ""
|
|
"This example shows how a subclass of :class:`ref` can be used to store "
|
|
"additional information about an object and affect the value that's returned "
|
|
"when the referent is accessed::"
|
|
msgstr ""
|
|
|
|
#: ../Doc/library/weakref.rst:329
|
|
msgid "Example"
|
|
msgstr "Exemple"
|
|
|
|
#: ../Doc/library/weakref.rst:331
|
|
msgid ""
|
|
"This simple example shows how an application can use object IDs to retrieve "
|
|
"objects that it has seen before. The IDs of the objects can then be used in "
|
|
"other data structures without forcing the objects to remain alive, but the "
|
|
"objects can still be retrieved by ID if they do."
|
|
msgstr ""
|