summaryrefslogtreecommitdiff
path: root/docs/reference
diff options
context:
space:
mode:
authorDan Winship <danw@src.gnome.org>2009-03-27 16:18:30 +0000
committerDan Winship <danw@src.gnome.org>2009-03-27 16:18:30 +0000
commit96325bb6c4de206beadee9c1de97dbf44026eb00 (patch)
tree04231ccd37be4a82ccb481b264eac1ff420740a9 /docs/reference
parent0a71b326ebaab6e0eea46e0b3a45b4249fdd3d7c (diff)
downloadlibsoup-96325bb6c4de206beadee9c1de97dbf44026eb00.tar.gz
libsoup-96325bb6c4de206beadee9c1de97dbf44026eb00.tar.bz2
libsoup-96325bb6c4de206beadee9c1de97dbf44026eb00.zip
clarify that SoupSessionAsync is not thread-safe, and that setting a
* docs/reference/client-howto.xml: clarify that SoupSessionAsync is not thread-safe, and that setting a non-default GMainContext on a non-threadsafe object means you can only use that object from that GMainContext's thread. svn path=/trunk/; revision=1255
Diffstat (limited to 'docs/reference')
-rw-r--r--docs/reference/client-howto.xml13
1 files changed, 12 insertions, 1 deletions
diff --git a/docs/reference/client-howto.xml b/docs/reference/client-howto.xml
index ef7fb59d..1d2962df 100644
--- a/docs/reference/client-howto.xml
+++ b/docs/reference/client-howto.xml
@@ -102,7 +102,7 @@ you can specify various additional options:
<term><link linkend="SOUP-SESSION-ASYNC-CONTEXT--CAPS"><literal>SOUP_SESSION_ASYNC_CONTEXT</literal></link></term>
<listitem><para>
A <link
- linkend="GMainContext"><type>GMainContext</type>type></link>
+ linkend="GMainContext"><type>GMainContext</type></link>
which the session will use for asynchronous operations.
This can be set if you want to use a
<type>SoupSessionAsync</type> in a thread other than the
@@ -497,6 +497,17 @@ is, you should not call any <type>SoupMessage</type> methods on it
except from a message or session callback or signal handler.)
</para>
+<para>
+All other objects (including <link
+linkend="SoupSessionAsync"><type>SoupSessionAsync</type></link>)
+should only be used from a single thread, with objects that are also
+only be used from that thread. (And in particular, if you set a
+non-default <link
+linkend="GMainContext"><type>GMainContext</type></link> on a session,
+socket, etc, then you can only use that object from the thread in
+which that <type>GMainContext</type> is running.)
+</para>
+
</refsect2>
<refsect2>