<Type Name="FileHandleOperations" FullName="Mono.Unix.FileHandleOperations">
  <TypeSignature Language="C#" Value="public sealed class FileHandleOperations" />
  <AssemblyInfo>
    <AssemblyName>Mono.Posix</AssemblyName>
    <AssemblyVersion>1.0.5000.0</AssemblyVersion>
    <AssemblyVersion>2.0.0.0</AssemblyVersion>
  </AssemblyInfo>
  <ThreadingSafetyStatement>All public static members of this type are safe for multithreaded operations. No instance members are guaranteed to be thread safe.</ThreadingSafetyStatement>
  <Base>
    <BaseTypeName>System.Object</BaseTypeName>
  </Base>
  <Interfaces />
  <Docs>
    <summary>Operations that can be performed on a file handle.</summary>
    <remarks>
      The <see cref="T:Mono.Unix.FileHandleOperations" /> class provides
      access to operating system operations that effect file handles, such as
      <see cref="T:System.IO.FileStream" />s,
      <see cref="T:Mono.Unix.UnixStream" />s, and 
      Unix file descriptors.
    </remarks>
  </Docs>
  <Members>
    <Member MemberName="AdviseFileAccessPattern">
      <MemberSignature Language="C#" Value="public static void AdviseFileAccessPattern (Mono.Unix.UnixStream stream, Mono.Unix.FileAccessPattern pattern);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="stream" Type="Mono.Unix.UnixStream" />
        <Parameter Name="pattern" Type="Mono.Unix.FileAccessPattern" />
      </Parameters>
      <Docs>
        <param name="stream">File stream to advise.</param>
        <param name="pattern">
          A <see cref="T:Mono.Unix.FileAccessPattern" /> containing the file 
          access pattern to suggest.
        </param>
        <summary>Advises a file access pattern for a file stream.</summary>
        <remarks>
          <para>
            <c>AdviseFileAccessPattern</c> is used to announce an intention
        to access file data with a specific pattern, allowing the kernel to
        perform appropriate optimizations.</para>
          <para>
            <paramref name="pattern" /> applies from beginning of file to end
          of file.</para>
          <para>The specified pattern is not binding; it merely constitutes an
        expectation on behalf of the application.</para>
        </remarks>
        <exception cref="T:System.ArgumentException">
          <para>
            <paramref name="stream" /> is not a valid file stream.
          </para>
          <para>-or-</para>
          <para>
            <paramref name="advice" /> is not a value.
          </para>
        </exception>
        <exception cref="T:System.ArgumentNullException">
          <paramref name="stream" /> 
          is <see langword="null" />.</exception>
        <exception cref="T:System.IO.IOException">
          <paramref name="stream" /> 
          refers to a pipe or FIFO.</exception>
        <altmember cref="M:Mono.Unix.Native.Syscall.posix_fadvise" />
      </Docs>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
    </Member>
    <Member MemberName="AdviseFileAccessPattern">
      <MemberSignature Language="C#" Value="public static void AdviseFileAccessPattern (int fd, Mono.Unix.FileAccessPattern pattern);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="fd" Type="System.Int32" />
        <Parameter Name="pattern" Type="Mono.Unix.FileAccessPattern" />
      </Parameters>
      <Docs>
        <param name="fd">
          A <see cref="T:System.Int32" /> containing the file descriptor to advise.
        </param>
        <param name="pattern">
          A <see cref="T:Mono.Unix.FileAccessPattern" /> containing the file 
          access pattern to suggest.
        </param>
        <summary>Advises a file access pattern for a Unix file descriptor.</summary>
        <remarks>
          <para>
            <c>AdviseFileAccessPattern</c> is used to announce an intention
        to access file data with a specific pattern, allowing the kernel to
        perform appropriate optimizations.</para>
          <para>
            <paramref name="pattern" /> applies from beginning of file to end
          of file.</para>
          <para>The specified pattern is not binding; it merely constitutes an
        expectation on behalf of the application.</para>
        </remarks>
        <exception cref="T:System.ArgumentException">
          <para>
            <paramref name="fd" /> is not a valid file descriptor.
          </para>
          <para>-or-</para>
          <para>
            <paramref name="advice" /> is not a valid value.
          </para>
        </exception>
        <exception cref="T:System.IO.IOException">
          <paramref name="fd" /> 
          refers to a pipe or FIFO.</exception>
        <altmember cref="M:Mono.Unix.Native.Syscall.posix_fadvise" />
      </Docs>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
    </Member>
    <Member MemberName="AdviseFileAccessPattern">
      <MemberSignature Language="C#" Value="public static void AdviseFileAccessPattern (System.IO.FileStream file, Mono.Unix.FileAccessPattern pattern);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="file" Type="System.IO.FileStream" />
        <Parameter Name="pattern" Type="Mono.Unix.FileAccessPattern" />
      </Parameters>
      <Docs>
        <param name="file">File stream to advise.</param>
        <param name="pattern">
          A <see cref="T:Mono.Unix.FileAccessPattern" /> containing the file 
          access pattern to suggest.
        </param>
        <summary>Advises a file access pattern for a file stream.</summary>
        <remarks>
          <para>
            <c>AdviseFileAccessPattern</c> is used to announce an intention
        to access file data with a specific pattern, allowing the kernel to
        perform appropriate optimizations.</para>
          <para>
            <paramref name="pattern" /> applies from beginning of file to end
				of file.</para>
          <para>The specified pattern is not binding; it merely constitutes an
        expectation on behalf of the application.</para>
        </remarks>
        <exception cref="T:System.ArgumentException">
          <para>
            <paramref name="file" /> is not a valid file stream.
          </para>
          <para>-or-</para>
          <para>
            <paramref name="advice" /> is not a valid value.
          </para>
        </exception>
        <exception cref="T:System.ArgumentNullException">
          <paramref name="file" /> 
          is <see langword="null" />.</exception>
        <exception cref="T:System.IO.IOException">
          <paramref name="file" /> 
          refers to a pipe or FIFO.</exception>
        <altmember cref="M:Mono.Unix.Native.Syscall.posix_fadvise" />
      </Docs>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
    </Member>
    <Member MemberName="AdviseFileAccessPattern">
      <MemberSignature Language="C#" Value="public static void AdviseFileAccessPattern (Mono.Unix.UnixStream stream, Mono.Unix.FileAccessPattern pattern, long offset, long len);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="stream" Type="Mono.Unix.UnixStream" />
        <Parameter Name="pattern" Type="Mono.Unix.FileAccessPattern" />
        <Parameter Name="offset" Type="System.Int64" />
        <Parameter Name="len" Type="System.Int64" />
      </Parameters>
      <Docs>
        <param name="stream">File stream to advise.</param>
        <param name="pattern">
          A <see cref="T:Mono.Unix.FileAccessPattern" /> containing the file 
          access pattern to suggest.
        </param>
        <param name="offset">
          A <see cref="T:System.Int64" /> containing the start of the range to suggest 
          the <paramref name="pattern" /> access pattern.
        </param>
        <param name="len">
          A <see cref="T:System.Int64" /> containing the length of the range
          to suggest the <paramref name="pattern" />
          access pattern.  If <c>0</c>, <paramref name="pattern" /> is suggested 
          until end-of-file.
        </param>
        <summary>Advises a file access pattern for a file stream.</summary>
        <remarks>
          <para>
            <c>AdviseFileAccessPattern</c> is used to announce an intention
        to access file data with a specific pattern, allowing the kernel to
        perform appropriate optimizations.</para>
          <para>
            <paramref name="pattern" /> applies to a region starting at
        <paramref name="offset" /> and extending for <paramref name="len" />
        bytes (or until end-of-file if <paramref name="len" /> is <c>0</c>)
        within the file specified by <paramref name="stream" />.  The specified
        region need not currently exist.</para>
          <para>The specified pattern is not binding; it merely constitutes an
        expectation on behalf of the application.</para>
        </remarks>
        <exception cref="T:System.ArgumentException">
          <para>
            <paramref name="stream" /> is not a valid file stream.
          </para>
          <para>-or-</para>
          <para>
            <paramref name="advice" /> is not a value.
          </para>
        </exception>
        <exception cref="T:System.ArgumentNullException">
          <paramref name="stream" /> is <see langword="null" />.</exception>
        <exception cref="T:System.IO.IOException">
          <paramref name="stream" /> 
          refers to a pipe or FIFO.</exception>
        <altmember cref="M:Mono.Unix.Native.Syscall.posix_fadvise" />
      </Docs>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
    </Member>
    <Member MemberName="AdviseFileAccessPattern">
      <MemberSignature Language="C#" Value="public static void AdviseFileAccessPattern (int fd, Mono.Unix.FileAccessPattern pattern, long offset, long len);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="fd" Type="System.Int32" />
        <Parameter Name="pattern" Type="Mono.Unix.FileAccessPattern" />
        <Parameter Name="offset" Type="System.Int64" />
        <Parameter Name="len" Type="System.Int64" />
      </Parameters>
      <Docs>
        <param name="fd">
          A <see cref="T:System.Int32" /> containing the file descriptor to advise.
        </param>
        <param name="pattern">
          A <see cref="T:Mono.Unix.FileAccessPattern" /> containing the file 
          access pattern to suggest.
        </param>
        <param name="offset">
          A <see cref="T:System.Int64" /> containing the start of the range to suggest 
          the <paramref name="pattern" /> access pattern.
        </param>
        <param name="len">
          A <see cref="T:System.Int64" /> containing the length of the range
          to suggest the <paramref name="pattern" />
          access pattern.  If <c>0</c>, <paramref name="pattern" /> is suggested 
          until end-of-file.
        </param>
        <summary>Advises a file access pattern for a Unix file descriptor.</summary>
        <remarks>
          <para>
            <c>AdviseFileAccessPattern</c> is used to announce an intention
        to access file data with a specific pattern, allowing the kernel to
        perform appropriate optimizations.</para>
          <para>
            <paramref name="pattern" /> applies to a region starting at
        <paramref name="offset" /> and extending for <paramref name="len" />
        bytes (or until end-of-file if <paramref name="len" /> is <c>0</c>)
        within the file specified by <paramref name="fd" />.  The specified
        region need not currently exist.</para>
          <para>The specified pattern is not binding; it merely constitutes an
        expectation on behalf of the application.</para>
        </remarks>
        <exception cref="T:System.ArgumentException">
          <para>
            <paramref name="fd" /> is not a valid file descriptor.
          </para>
          <para>-or-</para>
          <para>
            <paramref name="advice" /> is not a valid value.
          </para>
        </exception>
        <exception cref="T:System.IO.IOException">
          <paramref name="fd" /> 
          refers to a pipe or FIFO.</exception>
        <altmember cref="M:Mono.Unix.Native.Syscall.posix_fadvise" />
      </Docs>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
    </Member>
    <Member MemberName="AdviseFileAccessPattern">
      <MemberSignature Language="C#" Value="public static void AdviseFileAccessPattern (System.IO.FileStream file, Mono.Unix.FileAccessPattern pattern, long offset, long len);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="file" Type="System.IO.FileStream" />
        <Parameter Name="pattern" Type="Mono.Unix.FileAccessPattern" />
        <Parameter Name="offset" Type="System.Int64" />
        <Parameter Name="len" Type="System.Int64" />
      </Parameters>
      <Docs>
        <param name="file">File stream to advise.</param>
        <param name="pattern">
          A <see cref="T:Mono.Unix.FileAccessPattern" /> containing the file 
          access pattern to suggest.
        </param>
        <param name="offset">
          A <see cref="T:System.Int64" /> containing the start of the range to suggest 
          the <paramref name="pattern" /> access pattern.
        </param>
        <param name="len">
          A <see cref="T:System.Int64" /> containing the length of the range
          to suggest the <paramref name="pattern" />
          access pattern.  If <c>0</c>, <paramref name="pattern" /> is suggested 
          until end-of-file.
        </param>
        <summary>Advises a file access pattern for a Unix file descriptor.</summary>
        <remarks>
          <para>
            <c>AdviseFileAccessPattern</c> is used to announce an intention
        to access file data with a specific pattern, allowing the kernel to
        perform appropriate optimizations.</para>
          <para>
            <paramref name="pattern" /> applies to a region starting at
        <paramref name="offset" /> and extending for <paramref name="len" />
        bytes (or until end-of-file if <paramref name="len" /> is <c>0</c>)
        within the file specified by <paramref name="file" />.  The specified
        region need not currently exist.</para>
          <para>The specified pattern is not binding; it merely constitutes an
        expectation on behalf of the application.</para>
        </remarks>
        <exception cref="T:System.ArgumentException">
          <para>
            <paramref name="file" /> is not a valid file stream.
          </para>
          <para>-or-</para>
          <para>
            <paramref name="advice" /> is not a valid value.
          </para>
        </exception>
        <exception cref="T:System.ArgumentNullException">
          <paramref name="file" /> 
          is <see langword="null" />.</exception>
        <exception cref="T:System.IO.IOException">
          <paramref name="file" /> 
          refers to a pipe or FIFO.</exception>
        <altmember cref="M:Mono.Unix.Native.Syscall.posix_fadvise" />
      </Docs>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
    </Member>
  </Members>
</Type>
