powered by simpleCommunicator - 2.0.49     © 2025 Programmizd 02
Форумы / WCF, Web Services, Remoting [игнор отключен] [закрыт для гостей] / Узнать завершение всех методов сервиса вызванных асинхронно
3 сообщений из 3, страница 1 из 1
Узнать завершение всех методов сервиса вызванных асинхронно
    #36777940
blest
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
    static class Program
    {
        int count = 0;
        
        static void Main()
        {
            CallService1();
            CallService2();

            if (count == 2)
            {
                ExecMethod();
            }      
        }

        Service1_Completed()
        {
            count++;
        }

        Service2_Completed()
        {
            count++;
        }
    }

Вызываю 2 метода из вебсервиса асинхронно, дальнейшие действия (ExecMethod();) нужно выполнять только после завершения(получения) результатов от этих двух сервисов.
Решил, что можно сделать через счетчик результатов, т.е. после завершения какого-либо вызова счетчик инкрементируется.
Вопрос: в каком месте и как проверять значение этого счетчика, чтобы после установления в данном случае это в значении 2 вызывать нужный метод продолжения работы?
...
Рейтинг: 0 / 0
Узнать завершение всех методов сервиса вызванных асинхронно
    #36778259
Winnipuh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
blest
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
    static class Program
    {
        int count = 0;
        
        static void Main()
        {
            CallService1();
            CallService2();

            if (count == 2)
            {
                ExecMethod();
            }      
        }

        Service1_Completed()
        {
            count++;
        }

        Service2_Completed()
        {
            count++;
        }
    }

Вызываю 2 метода из вебсервиса асинхронно, дальнейшие действия (ExecMethod();) нужно выполнять только после завершения(получения) результатов от этих двух сервисов.
Решил, что можно сделать через счетчик результатов, т.е. после завершения какого-либо вызова счетчик инкрементируется.
Вопрос: в каком месте и как проверять значение этого счетчика, чтобы после установления в данном случае это в значении 2 вызывать нужный метод продолжения работы?

1. таймер и на тике проверять и если да - запускать
2. поток, что чуть сложнее
...
Рейтинг: 0 / 0
Узнать завершение всех методов сервиса вызванных асинхронно
    #36778262
Winnipuh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
да, еще можно в нужной точке ждать два события, которые будут взведены на завершении каждого метода и потом пускать третий вызов
...
Рейтинг: 0 / 0
3 сообщений из 3, страница 1 из 1
Форумы / WCF, Web Services, Remoting [игнор отключен] [закрыт для гостей] / Узнать завершение всех методов сервиса вызванных асинхронно
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]