Как использовать асинхронное программирование на основе задач?
Код:
public class MyClass
{
public Task<int> ReadAsync(byte [] buffer, int offset, int count);
}
{
public Task<int> ReadAsync(byte [] buffer, int offset, int count);
}
Добавить в аргументы Task указатель на делегат, который активируется по завершению метода. Хотя было бы правильнее для MyClass создать сеттер делегата, который будет оповещать всех подписавшихся на Task.
Цитата: CassandraDied
Добавить в аргументы Task указатель на делегат, который активируется по завершению метода. Хотя было бы правильнее для MyClass создать сеттер делегата, который будет оповещать всех подписавшихся на Task.
А какая тогда разница будет между тасками и обычным Callback ? там и там делегат активируется по завершению. но в мсдн ясно написано, то, что
вот такая фиговина
Код:
public class MyClass
{
public IAsyncResult BeginRead(
byte [] buffer, int offset, int count,
AsyncCallback callback, object state);
public int EndRead(IAsyncResult asyncResult);
}
{
public IAsyncResult BeginRead(
byte [] buffer, int offset, int count,
AsyncCallback callback, object state);
public int EndRead(IAsyncResult asyncResult);
}
Код:
public class MyClass
{
public Task<int> ReadAsync(byte [] buffer, int offset, int count);
}
{
public Task<int> ReadAsync(byte [] buffer, int offset, int count);
}
Ясненько. Подумал сначала, что ты пишешь свой обработчик задач. Мой прошлый пост не по теме.
Цитата: CassandraDied
спс, почитаю :D