منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب
طلب شرح لا ستخدام background worker لعمل thread و لتجنب Not responding - نسخة قابلة للطباعة

+- منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب (http://vb4arb.com/vb)
+-- قسم : قسم لغة الفيجوال بيسك VB.NET (http://vb4arb.com/vb/forumdisplay.php?fid=182)
+--- قسم : قسم اسئلة VB.NET (http://vb4arb.com/vb/forumdisplay.php?fid=183)
+--- الموضوع : طلب شرح لا ستخدام background worker لعمل thread و لتجنب Not responding (/showthread.php?tid=12808)



طلب شرح لا ستخدام background worker لعمل thread و لتجنب Not responding - nowaytorun - 24-07-15

انا عملت مشروع  و الحمد الله اشتغل بس كان فيه مشكلة  not responding
فانا عاوز اعرف ازاى احلها عن طريق background worker
و ده مثال بسيط عاوز الاقى ليه حل

Imports System.Threading
Public Class Form1
Dim m As Integer = 0
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
10:
TextBox1.Text = m
m = m + 5
BackgroundWorker1.RunWorkerAsync()
GoTo 10

End Sub

Private Sub BackgroundWorker1_DoWork(ByVal sender As Object, ByVal e As System.ComponentModel.DoWorkEventArgs) Handles BackgroundWorker1.DoWork
Thread.Sleep(1000)
End Sub
End Class



RE: طلب شرح لا ستخدام background worker لعمل thread و لتجنب Not responding - الطالب - 24-07-15

سلام

كود :
Imports System.Threading

Public Class Form1

    Dim m As Integer = 0

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        If Not BackgroundWorker1.IsBusy Then BackgroundWorker1.RunWorkerAsync()

    End Sub

    Private Delegate Sub Control()

    Private Sub BackgroundWorker1_DoWork(ByVal sender As Object, ByVal e As System.ComponentModel.DoWorkEventArgs) Handles BackgroundWorker1.DoWork
        Do
            Dim Invoker As New Control(Sub()
                                           TextBox1.Text = m
                                       End Sub)
            TextBox1.Invoke(Invoker, Nothing)
            m = m + 5
            Thread.Sleep(1000)
        Loop
    End Sub

End Class

موفقين


RE: طلب شرح لا ستخدام background worker لعمل thread و لتجنب Not responding - nowaytorun - 25-07-15

(24-07-15, 06:33 PM)الطالب كتب : سلام

كود :
Imports System.Threading

Public Class Form1

   Dim m As Integer = 0

   Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
       If Not BackgroundWorker1.IsBusy Then BackgroundWorker1.RunWorkerAsync()

   End Sub

   Private Delegate Sub Control()

   Private Sub BackgroundWorker1_DoWork(ByVal sender As Object, ByVal e As System.ComponentModel.DoWorkEventArgs) Handles BackgroundWorker1.DoWork
       Do
           Dim Invoker As New Control(Sub()
                                          TextBox1.Text = m
                                      End Sub)
           TextBox1.Invoke(Invoker, Nothing)
           m = m + 5
           Thread.Sleep(1000)
       Loop
   End Sub

End Class

موفقين

الف شكر .................الكود تمام