SocketAsyncEventArgs Конструкторы
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Перегрузки
SocketAsyncEventArgs() |
Создает пустой экземпляр SocketAsyncEventArgs. |
SocketAsyncEventArgs(Boolean) |
Инициализирует объект SocketAsyncEventArgs. |
SocketAsyncEventArgs()
- Исходный код:
- SocketAsyncEventArgs.cs
- Исходный код:
- SocketAsyncEventArgs.cs
- Исходный код:
- SocketAsyncEventArgs.cs
Создает пустой экземпляр SocketAsyncEventArgs.
public:
SocketAsyncEventArgs();
public SocketAsyncEventArgs ();
Public Sub New ()
Исключения
Платформа не поддерживается.
Примеры
В следующем примере кода представлена коллекция многократно используемых SocketAsyncEventArgs объектов.
// Represents a collection of reusable SocketAsyncEventArgs objects.
class SocketAsyncEventArgsPool
{
Stack<SocketAsyncEventArgs> m_pool;
// Initializes the object pool to the specified size
//
// The "capacity" parameter is the maximum number of
// SocketAsyncEventArgs objects the pool can hold
public SocketAsyncEventArgsPool(int capacity)
{
m_pool = new Stack<SocketAsyncEventArgs>(capacity);
}
// Add a SocketAsyncEventArg instance to the pool
//
//The "item" parameter is the SocketAsyncEventArgs instance
// to add to the pool
public void Push(SocketAsyncEventArgs item)
{
if (item == null) { throw new ArgumentNullException("Items added to a SocketAsyncEventArgsPool cannot be null"); }
lock (m_pool)
{
m_pool.Push(item);
}
}
// Removes a SocketAsyncEventArgs instance from the pool
// and returns the object removed from the pool
public SocketAsyncEventArgs Pop()
{
lock (m_pool)
{
return m_pool.Pop();
}
}
// The number of SocketAsyncEventArgs instances in the pool
public int Count
{
get { return m_pool.Count; }
}
}
Комментарии
После вызова этого конструктора все свойства будут иметь значения по умолчанию:
Ссылки на объекты будут иметь значение NULL
Свойства, возвращающие целое число, возвращают ноль.
Свойство LastOperation будет равно None.
Свойство SendPacketsFlags будет равно TransmitFileOptions.UseDefaultWorkerThread, что указывает, что флаги не будут использоваться.
Свойство SocketFlags будет равно None.
Вызывающий объект должен задать соответствующие свойства перед передачей объекта в соответствующий асинхронный метод сокета (xxxAsync).
Применяется к
SocketAsyncEventArgs(Boolean)
- Исходный код:
- SocketAsyncEventArgs.cs
- Исходный код:
- SocketAsyncEventArgs.cs
- Исходный код:
- SocketAsyncEventArgs.cs
Инициализирует объект SocketAsyncEventArgs.
public:
SocketAsyncEventArgs(bool unsafeSuppressExecutionContextFlow);
public SocketAsyncEventArgs (bool unsafeSuppressExecutionContextFlow);
new System.Net.Sockets.SocketAsyncEventArgs : bool -> System.Net.Sockets.SocketAsyncEventArgs
Public Sub New (unsafeSuppressExecutionContextFlow As Boolean)
Параметры
- unsafeSuppressExecutionContextFlow
- Boolean
Указывает, следует ли отключить захват и поток контекста выполнения. Поток контекста выполнения следует отключать, только если он обрабатывается более высокими слоями.