[Pythonjp-checkins] [python-doc-ja] push by songo****@gmail***** - Update 2.7.2: c-api/file on 2011-11-09 07:49 GMT

アーカイブの一覧に戻る

pytho****@googl***** pytho****@googl*****
2011年 11月 9日 (水) 17:07:17 JST


Revision: 8d6b9bc0fca8
Author:   Naoki INADA  <inada****@klab*****>
Date:     Tue Nov  8 23:49:44 2011
Log:      Update 2.7.2: c-api/file
http://code.google.com/p/python-doc-ja/source/detail?r=8d6b9bc0fca8

Modified:
  /c-api/file.rst

=======================================
--- /c-api/file.rst	Fri Apr  1 15:41:14 2011
+++ /c-api/file.rst	Tue Nov  8 23:49:44 2011
@@ -66,7 +66,7 @@

     *p* に関連付けられたファイルオブジェクトを :c:type:`FILE\*` で返します。

-   呼び出し側が GIL を開放している間もこの関数が返した :c:type:`FILE\*`
+   呼び出し側が :term:`GIL` を開放している間もこの関数が返し 
た :c:type:`FILE\*`
     オブジェクトを使うのであれば、以下に解説されてい 
る :c:func:`PyFile_IncUseCount`
     と :c:func:`PyFile_DecUseCount` 関数を適切に呼び出さなければなりません。

@@ -81,10 +81,19 @@
     :c:func:`PyFile_DecUseCount` を呼び出さなければなりません。
     そうしなければ、 Python はそのファイルオブジェクトを永遠に閉じません。

-   この関数を呼び出すときは、GILを取得していなければなりません。
-
-   例えば、 :c:func:`PyFile_AsFile` を呼び出した直後、GILを開放する
-   前にこの関数を呼び出します。
+   この関数を呼び出すときは、:term:`GIL` を取得していなければなりません。
+
+   例えば、 :c:func:`PyFile_AsFile` を呼び出した後、GILを開放する前に
+   この関数を呼び出します。 ::
+
+      FILE *fp = PyFile_AsFile(p);
+      PyFile_IncUseCount(p);
+      /* ... */
+      Py_BEGIN_ALLOW_THREADS
+      do_something(fp);
+      Py_END_ALLOW_THREADS
+      /* ... */
+      PyFile_DecUseCount(p);

     .. versionadded:: 2.6

@@ -97,7 +106,8 @@
     これは、先に行った :c:func:`PyFile_IncUseCount` の呼び出しを取り消すため
     だけに呼び出されるでしょう。

-   この関数を呼び出すときは、GILを取得していなければなりません。
+   この関数を呼び出すときは、 :term:`GIL` を取得していなければなりません。
+   (上の例を参照してください)

     .. versionadded:: 2.6




Pythonjp-checkins メーリングリストの案内
アーカイブの一覧に戻る