0 / 0 / 0
Регистрация: 23.12.2012
Сообщений: 15
1

Потоки Thread

10.11.2013, 22:03. Показов 1157. Ответов 4
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
По факту мне нужно по нажатии кнопки что бы выполнялся таймер но в отдельном потоке,собственно вот пробую и что-то не то судя по всему...
Выскочила ошибка или вообще не так делаю,подскажите,гуру
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
 private void timer1_Tick(object sender, EventArgs e)
        {
            Thread t = new Thread(output);
            t.Start();
            t.Join(); 
 
 
 
 
        }
        private void button1_Click(object sender, EventArgs e)
        {
 
 
            //Thread t = new Thread(new ThreadStart(output));
            //t.Start();
           
            timer1.Interval = Convert.ToInt32(textBox1.Text);
            timer1.Enabled = true;
 
 
        }
        private void output()
        {
            string s = DateTime.Now.Millisecond.ToString();
            listBox1.Items.Add(s + " | Milliseconds");
            listBox1.SelectedIndex = listBox1.Items.Count - 1;
            System.Media.SystemSounds.Asterisk.Play();
            
        }
Фото здесь!
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
10.11.2013, 22:03
Ответы с готовыми решениями:

Метод Thread.Suspend(),Thread.Resume()
Здравствуйте,пытаюсь сделать игру простенькую в Windows Form. И хочу,чтобы в ней было включено...

Thread
Есть два класса rockets и Form1: public partial class Form1 : Form { private...

Потоки Thread: Необработанное исключение типа "System.NullReferenceException"
Такова проблема thrListener = new Thread(KeepListening); thrListener.Start(); ... public...

exception в thread
есть некий код: public static void DownloadRSS(string URL, string fileName, ref Label...

4
Lawrence
10.11.2013, 22:17 2
Вот тебе пример
В главном потоке создается новый поток t, исполняющий метод, который непрерывно печатает символ 'y'. Одновременно главный поток непрерывно печатает символ 'x'.
CLR назначает каждому потоку свой ​​стек, так что локальные переменные хранятся отдельно.
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
    
class Program
    {
        static void Main(string[] args){
 
            Thread t = new Thread(WriteY);
            t.Start();            //Исполнение WriteY в новом потоке
            while (true)
                Console.Write("x"); //Выводит все время 'x'
        }
        static void WriteY(){
 
            while (true)
                Console.Write("y"); //Выводит все время 'y'
        }
    } 
}
0 / 0 / 0
Регистрация: 23.12.2012
Сообщений: 15
10.11.2013, 22:24  [ТС] 3
Я читал этот пример,все равно не понимаю,что не так!
0
438 / 362 / 100
Регистрация: 29.06.2010
Сообщений: 981
Записей в блоге: 1
10.11.2013, 23:48 4
Вы пытаетесь изменить значение UI компонента из другого потока, о чем и говорит ваша ошибка, попробуйте использовать синхронизацию.

C#
1
2
3
4
5
this.BeginInvoke(new Action(delegate
                                            {
                                                listBox1.Items.Add(s + " | Milliseconds");
                                                listBox1.SelectedIndex = listBox1.Items.Count - 1;
                                            }), null);
1
0 / 0 / 0
Регистрация: 23.12.2012
Сообщений: 15
10.11.2013, 23:52  [ТС] 5
Спасибо помогло!
закрыто)))
0
10.11.2013, 23:52
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
10.11.2013, 23:52
Помогаю со студенческими работами здесь

Thread проблемы
Все привет. При работе программы да и вообще в Debug'e возникает исключение если ставить 2 +...

Работа с Thread
Здравсвуйте! Нужна сросно помощь. Имеется несколько интерфейсов лежащих в разный библиотеках....

Потоки thread
Не могу разобраться в потоках std::thread. Что это? Как я думаю при создании потока thread у...

Потоки THread
Здравствуйте. В моей программе наблюдается странной поведение функции Sleep() в потоках THread....


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru