Multi threading probleem

Status
Niet open voor verdere reacties.

hanonymouss

Gebruiker
Lid geworden
7 sep 2011
Berichten
283
Hallo allemaal ik gebruik in mijn programma multi threading zodat het programma niet crasht.

De code werkt goed maar ik krijg een waarschuwing:
Code:
Public Sub Resume()' is obsolete: 'Thread.Resume has been deprecated.  Please use other classes in System.Threading, such as Monitor, Mutex, Event, and Semaphore, to synchronize Threads or protect resources.  http://go.microsoft.com/fwlink/?linkid=14202'.

Hoe kan ik ervoor zorgen dat ik die waarschuwing niet meer krijg

code:

[CPP]Imports System.Threading
Public Class Form1
Public m_Thread As Thread
Private Sub Button4_Click_1(sender As System.Object, e As System.EventArgs) Handles Button4.Click
If Button4.Text = "start" Then
m_Thread = New Thread(AddressOf test)
m_Thread.IsBackground = True
m_Thread.Start()
Button5.Enabled = True
Button4.Text = "stop"
ElseIf Button4.Text = "stop" Then
Button4.Text = "start"
Button5.Enabled = False
m_Thread.Abort()
End If


End Sub


Private Sub Button5_Click(sender As System.Object, e As System.EventArgs) Handles Button5.Click
If Button5.Text = "Pauze" Then
m_Thread.Suspend()
Button4.Enabled = False
Button5.Text = "Hervatten"
ElseIf Button5.Text = "Hervatten" Then
Button4.Enabled = True
m_Thread.Resume()
Button5.Text = "Pauze"
End If
End Sub[/CPP]

graag julliue hulp
 
Misschien kan je anders dit proberen:
Calling Thread.Sleep with Timeout.Infinite causes a thread to sleep until it is interrupted by another thread that calls Thread.Interrupt, or until it is terminated by Thread.Abort.

Bron: http://msdn.microsoft.com/en-us/library/tttdef8x.aspx

Ik heb het zelf niet getest, dus wees wel voorzichtig met het proberen ervan...

Succes! MartinJM
 
Laatst bewerkt:
je kreeg deze waarschuwing omdat de functie of de mannier waarop je die functie gebruikt niet meer van deze tijd is.
je zal dus een andere manier moeten vinden om je thread te hervatten na een onderbreking.
 
@MartinJM: Ik wil niet dat de code een "timeout" heeft met de methode threading.sleep()

@roby3: En welke methode is dan van deze tijd ? kun je me dan eentje aanraden
Voor mij is het ook goed als ik een backgroundworker kan pauzeren, hervatten of stoppen als het met deze manier niet werkt.
 
Als je nog eens goed naar mijn vorige post kijkt, dan kan je daarin dit lezen:
Calling Thread.Sleep with Timeout.Infinite causes a thread to sleep until it is interrupted by another thread that calls Thread.Interrupt, or until it is terminated by Thread.Abort.

Dit houdt in dat je met Thread.Sleep met Timeout.Infinite een thread kan laten slapen totdat je hem weer start...

Anders is die link misschien ook wel een goed uitgangspunt om vanuit te zoeken... Op msdn staat meestal vrij veel informatie, alleen is die soms wel verschrikkelijk ingewikkeld...


MartinJM
 
Status
Niet open voor verdere reacties.

Nieuwste berichten

Terug
Bovenaan Onderaan