CSharpScript.RunAsync && Terminate
От: codenet Россия  
Дата: 05.02.19 16:22
Оценка: -1
Привет.

хотел пощупать roslyn и наткнулся на одну проблему.
у меня есть скрип который я запускаю

await CSharpScript.RunAsync("while(true) {Thread.Sleep(1000); Console.WriteLine(""1"");}",...)


собственно вопрос в том, как прибить запущенный скрипт?

вариант 1 — передавать CancelationToken? но я не хочу внутри скрипта писать — while(token.IsCancellationRequested)...
вариант 2 — создать доп thread в котором запустить выполнение скрипта и заабортить его — что тоже не кашерно думаю


Задача — остановить \ пришибить исполнение скрипта (не важно на какой стадии он работает), есть другие способы ?



ps пока склоняюсь к new Threadи прибивать, т.к если много скриптов на await будет висеть я буду забивать ThreadPool
Отредактировано 05.02.2019 16:30 codenet . Предыдущая версия .
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.