Click or drag to resize

FileOpenTransacted Method (KernelTransaction, String, FileMode, FileAccess, FileShare, Int32, Boolean)

[AlphaFS] (Transacted) Opens a FileStream on the specified path using the specified creation mode, read/write and sharing permission, and buffer size.

Namespace:  Alphaleonis.Win32.Filesystem
Assembly:  AlphaFS (in AlphaFS.dll) Version: 2.2
Syntax
public static FileStream OpenTransacted(
	KernelTransaction transaction,
	string path,
	FileMode mode,
	FileAccess access,
	FileShare share,
	int bufferSize,
	bool useAsync
)

Parameters

transaction
Type: Alphaleonis.Win32.FilesystemKernelTransaction
The transaction.
path
Type: SystemString
The file to open.
mode
Type: System.IOFileMode
A constant that determines how to open or create the file.
access
Type: System.IOFileAccess
A FileAccess value that specifies the operations that can be performed on the file.
share
Type: System.IOFileShare
A constant that determines how the file will be shared by processes.
bufferSize
Type: SystemInt32
A positive Int32 value greater than 0 indicating the buffer size. The default buffer size is 4096.
useAsync
Type: SystemBoolean
Specifies whether to use asynchronous I/O or synchronous I/O. However, note that the underlying operating system might not support asynchronous I/O, so when specifying true, the handle might be opened synchronously depending on the platform. When opened asynchronously, the BeginRead and BeginWrite methods perform better on large reads or writes, but they might be much slower for small reads or writes. If the application is designed to take advantage of asynchronous I/O, set the useAsync parameter to true. Using asynchronous I/O correctly can speed up applications by as much as a factor of 10, but using it without redesigning the application for asynchronous I/O can decrease performance by as much as a factor of 10.

Return Value

Type: FileStream
A FileStream on the specified path, having the specified mode with read, write, or read/write access and the specified sharing option.
See Also