Sqlserver
 sql >> डेटाबेस >  >> RDS >> Sqlserver

बड़े SQLCommand VB.Net को निष्पादित करते समय प्रगति पट्टी कैसे प्रदर्शित करें?

यहाँ VB.Net 4.0 के साथ Asychrounous Work कैसे करें, इसका एक संक्षिप्त उदाहरण दिया गया है।

आइए कल्पना करें कि आपके पास एक ऐसा फॉर्म है जिसमें निम्नलिखित आयात हैं,

Imports System.Windows.Forms
Imports System.Threading
Imports System.Threading.Tasks

उस फ़ॉर्म के दो नियंत्रण हैं

Private WithEvents DoSomthing As Button
Private WithEvents Progress As ProgressBar

आपके आवेदन में कहीं न कहीं हमारे पास Function है ExecuteSlowStuff called कहा जाता है , यह फ़ंक्शन आपके executeMyQuery . के समतुल्य है . महत्वपूर्ण हिस्सा है Action पैरामीटर जो फ़ंक्शन यह दिखाने के लिए उपयोग करता है कि वह प्रगति कर रहा है।

Private Shared Function ExecuteSlowStuff(ByVal progress As Action) As Integer
    Dim result = 0
    For i = 0 To 10000
        result += i
        Thread.Sleep(500)
        progress()
    Next

    Return result
End Function

मान लें कि यह काम DoSomething . के क्लिक से शुरू हुआ है Button

Private Sub Start() Handled DoSomething.Click
    Dim slowStuff = Task(Of Integer).Factory.StartNew(
        Function() ExceuteSlowStuff(AddressOf Me.ShowProgress))
End Sub

आप शायद सोच रहे होंगे कि ShowProgress से आता है, वह अधिक गड़बड़ है।

Private Sub ShowProgress()
    If Me.Progress.InvokeRequired Then
        Dim cross As new Action(AddressOf Me.ShowProgress)
        Me.Invoke(cross)
    Else 
        If Me.Progress.Value = Me.Progress.Maximum Then
            Me.Progress.Value = Me.Progress.Minimum
        Else
            Me.Progress.Increment(1)
        End If

        Me.Progress.Refresh()
    End if
End Sub

ध्यान दें कि क्योंकि ShowProgress किसी अन्य थ्रेड से बुलाया जा सकता है, यह क्रॉस थ्रेड कॉल की जांच करता है। उस स्थिति में यह खुद को मुख्य धागे पर बुलाता है।



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. SQL सर्वर में FILE_ID() बनाम FILE_IDEX():क्या अंतर है?

  2. SQL सर्वर - क्वेरी शॉर्ट-सर्किटिंग?

  3. SQL सर्वर में टेबल-वैल्यूड फंक्शन क्या है?

  4. SQL सर्वर में डिफ़ॉल्ट बाधा नाम क्या है?

  5. SQL सर्वर में प्राथमिक कुंजी