@@ -12,7 +12,7 @@ msgid ""
1212msgstr ""
1313"Project-Id-Version :Python 3.14\n "
1414"Report-Msgid-Bugs-To :\n "
15- "POT-Creation-Date :2025-11-25 14:15+0000\n "
15+ "POT-Creation-Date :2025-11-27 14:15+0000\n "
1616"PO-Revision-Date :2025-09-16 00:00+0000\n "
1717"Last-Translator :Hengky Kurniawan, 2025\n "
1818"Language-Team :Indonesian (https://app.transifex.com/python-doc/teams/5390/ "
@@ -2803,6 +2803,207 @@ msgstr ""
28032803" PyCriticalSection2_End(&_py_cs2);\n"
28042804"}"
28052805
2806+ msgid "Legacy Locking APIs"
2807+ msgstr ""
2808+
2809+ msgid ""
2810+ "These APIs are obsolete since Python 3.13 with the introduction of :c:type:"
2811+ "`PyMutex`."
2812+ msgstr ""
2813+
2814+ msgid "These APIs are now a simple wrapper around ``PyMutex``."
2815+ msgstr ""
2816+
2817+ msgid "A pointer to a mutual exclusion lock."
2818+ msgstr ""
2819+
2820+ msgid "The result of acquiring a lock with a timeout."
2821+ msgstr ""
2822+
2823+ msgid "Failed to acquire the lock."
2824+ msgstr ""
2825+
2826+ msgid "The lock was successfully acquired."
2827+ msgstr ""
2828+
2829+ msgid "The lock was interrupted by a signal."
2830+ msgstr ""
2831+
2832+ msgid "Allocate a new lock."
2833+ msgstr ""
2834+
2835+ msgid ""
2836+ "On success, this function returns a lock; on failure, this function returns "
2837+ "``0`` without an exception set."
2838+ msgstr ""
2839+
2840+ msgid "The caller does not need to hold an :term:`attached thread state`."
2841+ msgstr ""
2842+
2843+ msgid ""
2844+ "This function now always uses :c:type:`PyMutex`. In prior versions, this "
2845+ "would use a lock provided by the operating system."
2846+ msgstr ""
2847+
2848+ msgid ""
2849+ "Destroy *lock*. The lock should not be held by any thread when calling this."
2850+ msgstr ""
2851+
2852+ msgid "Acquire *lock* with a timeout."
2853+ msgstr ""
2854+
2855+ msgid ""
2856+ "This will wait for *microseconds* microseconds to acquire the lock. If the "
2857+ "timeout expires, this function returns :c:enumerator:`PY_LOCK_FAILURE`. If "
2858+ "*microseconds* is ``-1``, this will wait indefinitely until the lock has "
2859+ "been released."
2860+ msgstr ""
2861+
2862+ msgid ""
2863+ "If *intr_flag* is ``1``, acquiring the lock may be interrupted by a signal, "
2864+ "in which case this function returns :c:enumerator:`PY_LOCK_INTR`. Upon "
2865+ "interruption, it's generally expected that the caller makes a call to :c:"
2866+ "func:`Py_MakePendingCalls` to propagate an exception to Python code."
2867+ msgstr ""
2868+
2869+ msgid ""
2870+ "If the lock is successfully acquired, this function returns :c:enumerator:"
2871+ "`PY_LOCK_ACQUIRED`."
2872+ msgstr ""
2873+
2874+ msgid "Acquire *lock*."
2875+ msgstr ""
2876+
2877+ msgid ""
2878+ "If *waitflag* is ``1`` and another thread currently holds the lock, this "
2879+ "function will wait until the lock can be acquired and will always return "
2880+ "``1``."
2881+ msgstr ""
2882+
2883+ msgid ""
2884+ "If *waitflag* is ``0`` and another thread holds the lock, this function will "
2885+ "not wait and instead return ``0``. If the lock is not held by any other "
2886+ "thread, then this function will acquire it and return ``1``."
2887+ msgstr ""
2888+
2889+ msgid ""
2890+ "Unlike :c:func:`PyThread_acquire_lock_timed`, acquiring the lock cannot be "
2891+ "interrupted by a signal."
2892+ msgstr ""
2893+
2894+ msgid ""
2895+ "Release *lock*. If *lock* is not held, then this function issues a fatal "
2896+ "error."
2897+ msgstr ""
2898+
2899+ msgid "Operating System Thread APIs"
2900+ msgstr ""
2901+
2902+ msgid "Sentinel value for an invalid thread ID."
2903+ msgstr ""
2904+
2905+ msgid "This is currently equivalent to ``(unsigned long)-1``."
2906+ msgstr ""
2907+
2908+ msgid ""
2909+ "Start function *func* in a new thread with argument *arg*. The resulting "
2910+ "thread is not intended to be joined."
2911+ msgstr ""
2912+
2913+ msgid "*func* must not be ``NULL``, but *arg* may be ``NULL``."
2914+ msgstr ""
2915+
2916+ msgid ""
2917+ "On success, this function returns the identifier of the new thread; on "
2918+ "failure, this returns :c:macro:`PYTHREAD_INVALID_THREAD_ID`."
2919+ msgstr ""
2920+
2921+ msgid "Return the identifier of the current thread, which will never be zero."
2922+ msgstr ""
2923+
2924+ msgid ""
2925+ "This function cannot fail, and the caller does not need to hold an :term:"
2926+ "`attached thread state`."
2927+ msgstr ""
2928+
2929+ msgid ":py:func:`threading.get_ident`"
2930+ msgstr ""
2931+
2932+ msgid ""
2933+ "Get general information about the current thread in the form of a :ref:"
2934+ "`struct sequence <struct-sequence-objects>` object. This information is "
2935+ "accessible as :py:attr:`sys.thread_info` in Python."
2936+ msgstr ""
2937+
2938+ msgid ""
2939+ "On success, this returns a new :term:`strong reference` to the thread "
2940+ "information; on failure, this returns ``NULL`` with an exception set."
2941+ msgstr ""
2942+
2943+ msgid "The caller must hold an :term:`attached thread state`."
2944+ msgstr ""
2945+
2946+ msgid "This macro is defined when the system supports native thread IDs."
2947+ msgstr ""
2948+
2949+ msgid ""
2950+ "Get the native identifier of the current thread as it was assigned by the "
2951+ "operating system's kernel, which will never be less than zero."
2952+ msgstr ""
2953+
2954+ msgid ""
2955+ "This function is only available when :c:macro:`PY_HAVE_THREAD_NATIVE_ID` is "
2956+ "defined."
2957+ msgstr ""
2958+
2959+ msgid ":py:func:`threading.get_native_id`"
2960+ msgstr ""
2961+
2962+ msgid ""
2963+ "Terminate the current thread. This function is generally considered unsafe "
2964+ "and should be avoided. It is kept solely for backwards compatibility."
2965+ msgstr ""
2966+
2967+ msgid ""
2968+ "This function is only safe to call if all functions in the full call stack "
2969+ "are written to safely allow it."
2970+ msgstr ""
2971+
2972+ msgid ""
2973+ "If the current system uses POSIX threads (also known as\" pthreads\" ), this "
2974+ "calls :manpage:`pthread_exit(3)`, which attempts to unwind the stack and "
2975+ "call C++ destructors on some libc implementations. However, if a "
2976+ "``noexcept`` function is reached, it may terminate the process. Other "
2977+ "systems, such as macOS, do unwinding."
2978+ msgstr ""
2979+
2980+ msgid ""
2981+ "On Windows, this function calls ``_endthreadex()``, which kills the thread "
2982+ "without calling C++ destructors."
2983+ msgstr ""
2984+
2985+ msgid "In any case, there is a risk of corruption on the thread's stack."
2986+ msgstr ""
2987+
2988+ msgid ""
2989+ "Initialize ``PyThread*`` APIs. Python executes this function automatically, "
2990+ "so there's little need to call it from an extension module."
2991+ msgstr ""
2992+
2993+ msgid "Set the stack size of the current thread to *size* bytes."
2994+ msgstr ""
2995+
2996+ msgid ""
2997+ "This function returns ``0`` on success, ``-1`` if *size* is invalid, or "
2998+ "``-2`` if the system does not support changing the stack size. This function "
2999+ "does not set exceptions."
3000+ msgstr ""
3001+
3002+ msgid ""
3003+ "Return the stack size of the current thread in bytes, or ``0`` if the "
3004+ "system's default stack size is in use."
3005+ msgstr ""
3006+
28063007msgid "PyEval_InitThreads()"
28073008msgstr "PyEval_InitThreads()"
28083009