Когда я создаю делегата, компиллятор автоматически создаёт в его классе методы BeginInvoke и EndInvoke. Где-то можно посмотреть описания этих методов в таком же виде, в каком я смотрю описания всех других методов? Проблема в том, что эти методы не содержатся в классе Delegate и его наследниках, а создаются конкретно под каждый делегат в моей программе, поэтому в доках они не представлены.
Конкретно, меня интересует, как пользоваться объектом типа IAsyncResult?
Я по наитию запоминаю этот объект, который возвращается BeginInvoke, а потом передаю его соответствующему EndInvoke. Но насколько это необходимо? Ведь я всё равно вызываю EndInvoke к конкретному экземпляру делегата и там внутри уже содержится вся необходимая информация. Зачем ещё передавать IAsyncResult?
Здравствуйте, dims12, Вы писали:
D>Ведь я всё равно вызываю EndInvoke к конкретному экземпляру делегата и там внутри уже содержится вся необходимая информация.
Здравствуйте, Jolly Roger, Вы писали:
D>>Зачем ещё передавать IAsyncResult?
JR>Может быть затем, что один делегат может быть вызван одновременно из разных потоков?