Как убить поток и передать из него данные в класс формы? - C#

Узнай цену своей работы

Формулировка задачи:

здравствуйте. пользуюсь Visual Studif 2005, проект на C# под PDA. На С# пишу первый раз. Клиент-серверное приложение, нужен поток приема данных. поток я делать научился: объявление переменной piThread Код:
namespace TestThreadPrj 
{ 
    public partial class Form1 : Form 
    { 
        
        Thread piThread; 
      
        public Form1() 
  .................
функция, выполняемая в отдельном потоке: Код:
............ 
public void calc() 
        { 
            int i = 0; 
            while (true) 
            { 
                i++; 
            } 
        } 
............
запуск потока: Код:
piThread = new Thread(new ThreadStart(calc)); 
piThread.Start();
поток запускается и работает, но я не понимаю как его корректно завершить\остановить\усыпить из класса формы. Кроме метода piThread.Abort мне ничего не доступно, но и при попытке вставить этот вызов возникает ошибка при компиляции. Также у меня есть острая необходимость передавать данные в класс формы из этого потока, но я также не знаю как это корректно и правильно делть. Функция public void calc() описана в классе формы, так что теоретически я могу доставать переменные класса формы и компоненты самой формы, но это будет в рамках другого потока, что не правильно. Подскажите, пожалуйста!

Решение задачи: «Как убить поток и передать из него данные в класс формы?»

textual
Листинг программы
bool flag=true;
//...
//...
public void calc() 
{ 
while (flag) 
{ 
//некая работа
}
}

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

8   голосов , оценка 4.25 из 5
Похожие ответы