Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Общие вопросы по .NET и C# > Проблема с таймером


Автор: hug 14.3.2008, 08:48
Проблема такая:
Когда запускаю таймер из main, все работает:

Код



TaskMaster wrk = new TaskMaster();
TimerCallback timerDelegate =  new TimerCallback(wrk.Test);
Timer stateTimer3 = new Timer(timerDelegate, null, 0, 1000);
while (true)
{
}


По консоли вижу, что, выполнение идет.
Когда идет запуск не из main:
Код

Tasker tsk = new Tasker();
tsk.startwork();
while (true)
{
}
public void startwork()
{
     TaskMaster wrk = new TaskMaster();
     TimerCallback timerDelegate =  new TimerCallback(wrk.Test);
     Timer stateTimer3 = new Timer(timerDelegate, null, 0, 1000)
}


Ход выполнения уже не виден.
Если в startwork вконце вставить while(true) {} , то опять на консоль идет вывод о ходе потока.
Может, кто-нибудь может пояснить ситуацию?

Автор: Bogdan1024 14.3.2008, 18:54
Консольные приложения работают пока не закончится код в main(). Используй Console.ReadKey() или отслеживай когда работа будет сделана.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)