![]() |
Модераторы: Partizan, gambit |
![]() ![]() ![]() |
|
Rockie |
|
|||
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1143 Регистрация: 23.4.2006 Репутация: нет Всего: 31 |
Здравствуйте!
1) У меня есть форма Form1, на ней label1. есть функция, которая прорисовывает на label текущее время. Хочу запустить ее в отдельном потоке. Чтобы один поток опрашивал системный таймер и прорисовывал время на label, а основной чтобы реагировал на действия пользователя(слушал щелчки мышью и т.п.). Вот тут вроде хороший пример, но у меня он не работает как написано(все цифры по порядку), и там как понял создаются два потока, а мне нужен только один - "побочный", для таймера.. Вот пример кода:
2) Можно ли регулировать приоритеты потоков? То есть чтобы одному отводилось меньшее процессорное время, а другому - большее? 3) Где доступно на русском описана работа с потоками в .NET 2.0, если можно ссылки? -------------------- Чтобы иметь большой гардероб - надо иметь большой гардероб. |
|||
|
||||
QryStaL |
|
|||
![]() Intellectual feast ![]() ![]() Профиль Группа: Участник Сообщений: 914 Регистрация: 30.11.2005 Репутация: 10 Всего: 32 |
1) Кидаешь на форму компонент таймер, ставишь ему интервал 1000. Добавляешь обработчик события Tick.
2) Свойство Thread.Priority. 3) Основы - Троелсен, Рихтер. Более подробно и углубленно - на английском (есть целые книги, посвященные этой теме, в том числе и МСДН). -------------------- I don't need a reason being who I am... |
|||
|
||||
Rockie |
|
|||
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1143 Регистрация: 23.4.2006 Репутация: нет Всего: 31 |
QryStaL, понятно, спасибо. Однако в данном случае интересует именно многопоточный вариант. Запуск любой функции в потоке, не обязательно таймер.
-------------------- Чтобы иметь большой гардероб - надо иметь большой гардероб. |
|||
|
||||
anonym |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 147 Регистрация: 27.11.2006 Репутация: 1 Всего: 3 |
Пример работы с классом Thread
|
|||
|
||||
tol05 |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1632 Регистрация: 21.12.2006 Где: Харьков Репутация: 36 Всего: 170 |
добавлю ко всему выше сказанному
![]() Rockie, пример anonym - классический. Юзай. Только в версии 2.0 появилась возможность кроме делегата ThreadStart юзать еще ParameterizedThreadStart, чему нельзя не радоваться. Можно передавать параметры в поток (создавая массив object[] и упаковывая в него сколько угодно много параметров)... Кроме того, есть еще пул потоков ThreadPool, для WinForms - компонент BackgroundWorker. Для выполнения асинхронных операций также есть целая модель АРМ (тут, как сказал QryStaL, действительно лучше всего - Рихтера читать). А попростому - если видишь метод, начинающийся с BeginXXXXXX или EndXXXXXX - то это как раз APM. ну а для начала можно почитать : http://rsdn.ru/ (статья "Работа с потоками в C#") http://www.intuit.ru/department/pl/cil/15/ -------------------- На хорошей работе и сны хорошие снятся. |
|||
|
||||
Rockie |
|
|||
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1143 Регистрация: 23.4.2006 Репутация: нет Всего: 31 |
Понял, буду разбираться!
![]() -------------------- Чтобы иметь большой гардероб - надо иметь большой гардероб. |
|||
|
||||
![]() ![]() ![]() |
Прежде чем создать тему, посмотрите сюда: | |
|
Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов. Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :) Так же не забывайте отмечать свой вопрос решенным, если он таковым является :) Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, Partizan, PashaPash. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | .NET для новичков | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |