<ThreadSafetyStatement>Gtk# is thread aware, but not thread safe; See the <linklocation="node:gtk-sharp/programming/threads">Gtk# Thread Programming</link> for details.</ThreadSafetyStatement>
<seecref="T:System.IO.Stream"/> implementation using the Gnome.Vfs library.</summary>
<remarks>
<para>The VfsStream class hides the Gnome.Vfs API from the developer. It uses the <seecref="T:System.IO.Stream"/> class and associated enums to access the <seecref="T:System.String"/> representation of the <seecref="T:Gnome.Vfs.Uri"/> passed in the constructor.</para>
<para>This class is particularly useful if you want to develop an application that wants to use Gnome.Vfs where available, but can't depend on it being available always. On platforms where Gnome.Vfs is not available, the application can fallback to a regular <seecref="T:System.IO.FileStream"/>. This doesn't affect how the rest of the application deals with the stream since both implement the abstract <seecref="T:System.IO.Stream"/> class.</para>
<summary>Construct a new instance of the VfsStream with the specified <seecref="T:System.IO.FileMode"/>. Based the async parameter, the file will be accessed (a)synchronously.</summary>
<paramname="text_uri">
<seecref="T:System.String"/> representing the <seecref="T:Gnome.Vfs.Uri"/> to open.</param>
<paramname="mode">
<seecref="T:System.IO.FileMode"/> specifying how to open the <seecref="T:Gnome.Vfs.Uri"/>.</param>
<paramname="async">whether to access the file (a)sychronously.</param>
<remarks>The underlying file will be accessed either by using the <seecref="T:Gnome.Vfs.Sync"/> or <seecref="T:Gnome.Vfs.Async"/> class.</remarks>