| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > .NET для новичков > Заставить таймер работать в другом потоке |
| Автор: CasperSC 5.4.2010, 20:08 | ||||
Так пробовал, ничего не получилось.
Вот что делает таймер:
Просто у меня в программе можно делать скриншоты и если я раз 10 нажму на горячую клавишу, то скриншоты пока будут делаться, таймер будет простаивать и не сработает будильник. Что делать? Я уже много всего перепробовал, нету толку, думаю может с потоками, что получиться. |
| Автор: jonie 5.4.2010, 20:26 |
| http://dotnetperls.com/backgroundworker и вообще про этот класс почитайте, в интернет тонны информации |
| Автор: CasperSC 5.4.2010, 21:52 | ||
| Ну почитал я справку в msdn и некоторые сайты посмотрел, тока от этого таймер не стал работать в другом потоке, что-то не ясно как это делается конкретно в моём случае. Я сомневаюсь, что тут надо тонну кода написать, чтобы я понял как он работает. Тут я увидел http://www.sql.ru/Forum/actualthread.aspx?bid=34&tid=661609&hl= код. Я как понял этот самый BackgroundWorker можно вместо таймера использовать? По английски к сожалению я не супер читаю. Вот как выполнить операцию? Не один из способов не подходит
|
| Автор: CasperSC 6.4.2010, 10:49 |
| Ну как обычно, тема умерла. Неужели никто не знает? Если сам разберусь, выложу сюда пример, для других. |
| Автор: ДобренькийПапаша 6.4.2010, 22:02 | ||
Вы в своём первом примере не забыли сделать
нет?))) Если забыли, то сделайте. Но у Вас всё равно код не будет работать корректно, у вас в функции, которую вы запускаете в отдельном потоке есть обращение к контролам формы, которые созданы в другом потоке, соответственно, эксэпшн вам обеспечен. Для того, чтобы его не получать, прочитайте про InvokeRequired. Надеюсь я Вам помог |
| Автор: CasperSC 8.4.2010, 11:57 | ||||
Ничего себе ломает мозг. А по другому как? Там условий тонна. Я и так всё упростил, до проще некуда, раскидал по методам. А как по другому? У меня рядом не сидит учитель программист. я вообще сам с нуля учусь программированию. И я бы хотел услышать всё-таки ответ на моё сообщение. Это я про код в первом посту, да и в следующем, проще нельзя думаю сделать, хотя я вообще пока не умею этим BackgroundWorker'ом работать. |
| Автор: radow 13.4.2010, 00:01 | ||||
|