Форум программистов, компьютерный форум, киберфорум
Visual Basic .NET
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
33 / 15 / 5
Регистрация: 08.05.2013
Сообщений: 146
1

Повторный вызов делегированной процедуры в запущенный ранее поток

15.07.2015, 17:13. Показов 1117. Ответов 0
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Есть у меня форма на ней поток, только поток запускается по нажатии кнопки, сделал простое условие при котором если значение переменной типа Boolean при первом нажатии кнопки было TRUE оно же становится Fals, и при повторном нажатии на кнопку происходят другие действия. Так вот вопрос: ниже в коде кнопка запускает поток где выполняется некая функция temp(), как мне при повторном нажатии кнопки "сказать" программе чтоб функция в потоке прекратилась и вызвалась заново
VB.NET
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
Public Class Form1
 
    Public Th As Thread = Nothing
    Dim first As Boolean = True
   
    
    Private Sub Button2_Click_1(sender As Object, e As EventArgs) Handles Button2.Click
        If first Then
            ProgressBar1.Visible = True
           Me.Th = New System.Threading.Thread(AddressOf Me.temp)
            Me.Th.Start()
           first = False
 
        Else
вот тут как указать чтоб функция temp() завершилась принудительно и вызвалась бы заново
 в том же самом отдельном потоке
           
 
           ' If ListBox1.Items.Count > 0 Then
            'ListBox1.Items.Clear()
            ' End If
 
            'If ProgressBar1.Value > 0 Then
            'ProgressBar1.Value = 0
            'End If
 
        End If
    End Sub
Добавлено через 46 минут
Спасибо. Решил проблемку сам. Если кому понадобится то сделал так
VB.NET
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
31
32
33
34
Public Class Form1
    Public Th As Thread = Nothing
    Dim Fist As Boolean = True
    Dim Second As Boolean = True
       
    Private Sub Button2_Click_1(sender As Object, e As EventArgs) Handles Button2.Click
        If Fist Then
            ProgressBar1.Visible = True
            Label2.Text = "Ожидаем завершения функции Network.Ping"
            Me.Th = New System.Threading.Thread(AddressOf Me.temp)
            Me.Th.Start()
            Fist = False
 
        Else
            Second = False
            If ListBox1.Items.Count > 0 Then
                ListBox1.Items.Clear()
            End If
 
            If ProgressBar1.Value > 0 Then
                ProgressBar1.Value = 0
            End If
 
            End If
    End Sub
    Public Sub temp()
        Second = True
 
          If Second = False Then
 
                    temp()
          End If
 
     end sub
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
15.07.2015, 17:13
Ответы с готовыми решениями:

Повторный вызов процедуры
Всем очень добрый день! А подскажите,пожалуйста,в Си++ процедура может вызываться несколько раз в...

Повторный вызов процедуры
Вопрос такой. Есть процедура например procedure Ti1.N21Click(Sender: TObject); вот , при ее нажатии...

Почему не работает повторный вызов процедуры
program Program9; uses graphabc, abcobjects, abcbuttons; var b : rectangleABC; c :...

Запретить запускать дубль программы, активировать при этом ранее запущенный экземпляр
Хочу не просто запретить запуск дубля программы, но и активизировать при этом ранее запущенную...

0
15.07.2015, 17:13
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
15.07.2015, 17:13
Помогаю со студенческими работами здесь

Повторный вход залогиненного ранее пользователя завершается неудачей
при запуске приложения есть "регистрация и вход" и строчка @if...

SslStream. Не видно запущенный поток
Добрый день, уважаемые форумчане. Подключаю клиент к серверу, создавая новый поток и поднимая SSL,...

Остановить поток запущенный внутри onRefresh()
У меня есть активити, которое реализует интерфейс SwipeRefreshLayout.OnRefreshListener. В его...

Повторный вызов GET
Добрый день! Написал простой парсинг курса валют с сайта cbr.ru первый раз гет запрос вида:...


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

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