|
Модераторы: Partizan, gambit |
|
lllJollyRogerlll |
|
|||
Новичок Профиль Группа: Участник Сообщений: 31 Регистрация: 20.11.2014 Репутация: нет Всего: нет |
Доброго времени суток.
Прошу объяснить деревянному, почему в данном случает отрабатывает метод обратного вызова?
Ведь статическое св-во CancellationToken.None передает токен, который не содержит ссылки на его соурс. То есть впринципе мы не можем строкой cts.Cancel(); отменить выполнение цикла. А в жизни выходит все в точности наоборот. См. скрин ниже |
|||
|
||||
mihryak |
|
|||
Опытный Профиль Группа: Участник Сообщений: 731 Регистрация: 28.4.2007 Где: С-Пб Репутация: 19 Всего: 36 |
Весь код приведи, плз, в т.ч. вызывающий твой кусок кода.
Подозреваю, что "Press any key to continue" - последний вывод сообщения в программе, после чего она завершается. В том случае нет никакого чуда: 1. Запускается задача на печать чисел 2. Вызывающий поток блочится вызовом Console.ReadLine(); 3. Пользователь жмёт кнопку 4. Основной поток продолжает работу 5. Основной поток вызывает cts.Cancel();, что выводит на экран "was cancelled" 6. Это, вероятно, последняя "рабочая" инструкция основного потока, после чего выводится "Press any key to continue". 7. Т.к. потоки из пула имеют свойство IsBackground=false, они автоматически завершаются при завершении вызывающего (у нас - основного) потока, наша поточная функция попросту завершеается примерно на том моменте, когда пользователь нажал enter |
|||
|
||||
lllJollyRogerlll |
|
|||
Новичок Профиль Группа: Участник Сообщений: 31 Регистрация: 20.11.2014 Репутация: нет Всего: нет |
Доброго времени суток. Все точно так и есть. Спасибо большое что разжевали!
|
|||
|
||||
Прежде чем создать тему, посмотрите сюда: | |
|
Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов. Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :) Так же не забывайте отмечать свой вопрос решенным, если он таковым является :) Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, THandle. |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Общие вопросы по .NET и C# | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |