Задать вопрос

Многопоточность?

Что-то не понимаю я работу с потоками. Создал поток для функции в форме. Я так понимаю, что теперь он не зависим от основного потока. Инициализировал его и запустил, но стоит ему зациклиться или встретить sleep, так зависает и форма. Это нормально?
P.S. Application.DoEvents вообще работает?
  • Вопрос задан
  • 363 просмотра
Подписаться 2 Оценить Комментировать
Решения вопроса 1
@MonkAlex
C#, SQL, Delphi, C++ etc
стоит ему зациклиться
И он выжирает все доступные ресурсы. Это возможно и это нормально.
или встретить sleep
А вот это не нормально, ибо Sleep одного потока должен наоборот переключать контекст.

Вообще, потоки отлично работают, можно из формы вызвать тяжелую операцию и при этом не вешать форму.
Скорее всего, вы делаете что-то не так.

Код был бы полезен, если конечно у вас не закрытый коммерческий проект.
Ответ написан
Пригласить эксперта
Ответы на вопрос 3
как мен нравятся вопрос в стиле "я сделал невиданное нечто, скажите что не так, но только я вам ничего не расскажу, сами догадайтесь". ТовариСЧЬ, вы либо какую то информацию дайте или идите и дальше сами разбирайтесь, что у вас не так в коде.
Ответ написан
Комментировать
keyros
@keyros
http://about.me/keyros
Значит так, возможно, это все из-за того, что слишком часто обновляете конрол
Ответ написан
Комментировать
ImmortalCAT
@ImmortalCAT
C# loving
если вы создали
public void TODO()
{
//TODO:
}
Thread th = new Thread(TODO);
th.Start();

из main(string[] args)
то форма никак не долна зависнуть... вродебы :)
ну эт как пример для консольки, но суть не меняется
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы