powered by simpleCommunicator - 2.0.56     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / BeginInvoke Callback
4 сообщений из 4, страница 1 из 1
BeginInvoke Callback
    #38608054
sanekoffice
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Здравствуйте!
Суть в том чтобы выполнить асинхронно Waiting и получить результат в Callbaсk-методе.
Может изначально я выбрал не тот подход и в этом случае пользоваться нужно другими инструментами?

Код: c#
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.
26.
27.
   
delegate int WaitingEventHandler(int secondCount);
WaitingEventHandler del;

        public int Waiting(int secondCount) 
        {
            int i = 0;
            while (i<secondCount)
            {
                Thread.Sleep(1000);
                i++;
            }
            Random r = new Random();
            return r.Next(0,100);
        }

        public void AsyncResultCallBack(IAsyncResult ar)
        {
            ar.AsyncState; // Здесь хочу получить результат выполнения Waiting
            deleg.EndInvoke(ar);
        }

        public void Start()
        {          
            del = new WaitingEventHandler(Waiting);
            deleg.BeginInvoke(this, new EventArgs(), AsyncResultCallBack, null);
        }
...
Рейтинг: 0 / 0
BeginInvoke Callback
    #38608069
sanekoffice
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
sanekofficeЗдравствуйте!
Суть в том чтобы выполнить асинхронно Waiting и получить результат в Callbaсk-методе.
Может изначально я выбрал не тот подход и в этом случае пользоваться нужно другими инструментами?

Код: c#
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.
26.
27.
   
delegate int WaitingEventHandler(int secondCount);
WaitingEventHandler del;

        public int Waiting(int secondCount) 
        {
            int i = 0;
            while (i<secondCount)
            {
                Thread.Sleep(1000);
                i++;
            }
            Random r = new Random();
            return r.Next(0,100);
        }

        public void AsyncResultCallBack(IAsyncResult ar)
        {
            ar.AsyncState; // Здесь хочу получить результат выполнения Waiting
            deleg.EndInvoke(ar);
        }

        public void Start()
        {          
            del = new WaitingEventHandler(Waiting);
            deleg.BeginInvoke(this, new EventArgs(), AsyncResultCallBack, null);
        }


Я вместо del написал deleg. Опечатка. Но проблема та же
...
Рейтинг: 0 / 0
BeginInvoke Callback
    #38608208
Фотография Где-то в степи
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
sanekoffice,авторНо проблема та же
что за проблема ? null? так там null...
...
Рейтинг: 0 / 0
BeginInvoke Callback
    #38608779
sanekoffice
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Где-то в степи,
Да это понятно что я null передаю.
Просто хотел чтобы в AsyncResultCallBack прилетело значение из Waiting.
А то получается что запускаю метод в потоке - реагирую на завершение колбэком, а что получилось в методе я в колбэке прочитать не могу...
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / BeginInvoke Callback
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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