Тема: Поясніть за шаблони асинхронного програмування.
Здорів. Ну от я знаю, існує три шаблона. Це шаблон з використанням колбеків, з використанням подій, і з використанням якихось тасків. http://msdn.microsoft.com/ru-ru/library/jj152938.aspx Досі я використовував лише колбеки, тому що там все зрозуміло і прозоро. Перший метод запускає якийсь процес і працює в окремому потоці, а по закінченню роботи викликається інший метод, в котрий передається результат або будь-яка потрібна інформація. Ну тобто мона створити якийсь класс, позапихувати в нього купу інформації, при запуску асинхронного метода запихнути в нього той класс, а після закінчення роботи, викликається інший метод, в котрому ми отримуємо той самий класс і можемо робити з ним все, що захочемо. Оооот. А з подіями і тасками я нічо не зрозумів. Можете пояснити за ці два шаблона, на прикладі отримання інфи по сокету. Ну якщо це колбеки, то буде
Socket.BeginReceive(buffer,
                    0, buffer.Length, SocketFlags.None,
                    new AsyncCallback(ReceiveCallback),
                    data); // тут data - це якісь дані, включаючи сам сокет, а ReceiveCallback - метод, котрий викликається по закінченню виконання асинхронного метода.
 private void ReceiveCallback(IAsyncResult result)
            {
       
                Data data =
                (Data)result.AsyncState; //отримуємо дані
                    int bytesRead =
                    data.Socket.EndReceive(result); // отримуємо кількість прочитаних байт
}
                  А ви поясніть, як це буде виглядати, якщо використовувати події або таски. Дякую :3

