Solved

VS 2008

Posted on 2014-10-02
1
90 Views
Last Modified: 2014-10-05
Hi Experts
I am using the following code bring VFP data into Sql Express.
my code
  Dim connVfp As String = "Provider=VFPOLEDB.1;Data Source=c:\mas_progs\ggarage_prog\data3\garage.dbc"
    Public conVfp As New OleDb.OleDbConnection(connVfp)
    Public dsVfp As New DataSet
    Public DTVfp As New DataTable
    Public daVfp As DataAdapter

    Dim connExp As String = "Data Source=.\SQLEXPRESS;AttachDbFilename=C:\bill\Garage\GarageDatabase.mdf;Integrated Security=True;User Instance=True"
    Public conExp As New SqlConnection(connExp)
    Public dsExp As New DataSet
    Public DTexp As New DataTable
    Public daexp As DataAdapter
    Public ccodex As String
    Public ccodeexist = "Y"
   Dim davfp As New OleDbDataAdapter(" select * FROM Customer ", conVfp)
        Dim daExp As New SqlDataAdapter(" select * FROM Customer ", conExp)
    davfp.Fill(DTVfp)
        daExp.Fill(DTexp)
     DataGridView1.DataSource = DTVfp
        DataGridView2.DataSource = DTexp
it works fine upto here
when
     For Each rowa In DTVfp.Rows
            ccodeexist = "N"
            ccodex = rowa("ccode")
            If IsDBNull(rowa("ccode")) = False Then
                For Each rowb In DTexp.Rows
                    If IsDBNull(rowb("ccode")) = False Then
                        If rowb("ccode") = ccodex Then
                            ccodeexist = "Y"
                            Exit For
                        End If
                    End If
                Next
                If ccodeexist <> "Y" Then
                    Dim rown As DataRow = DTexp.NewRow()
                    rown("Ccode") = rowa("ccode")
                    rown("C_name") = rowa("c_name")
                    rown("title") = rowa("title")
                    DTexp.Rows.Add(rown)
                End If
            End If
next

This table has 20000 records and after a minute I get the following Error:

ContextSwitchDeadlock was detected
Message: The CLR has been unable to transition from COM context 0x4d3b900 to COM context 0x4d3ba70 for 60 seconds. The thread that owns the destination context/apartment is most likely either doing a non pumping wait or processing a very long running operation without pumping Windows messages. This situation generally has a negative performance impact and may even lead to the application becoming non responsive or memory usage accumulating continually over time. To avoid this problem, all single threaded apartment (STA) threads should use pumping wait primitives (such as CoWaitForMultipleHandles) and routinely pump messages during long running operations.
0
Comment
Question by:b001
1 Comment
 
LVL 22

Accepted Solution

by:
plusone3055 earned 500 total points
ID: 40358105
In visual studio

hit
CTRL + ALT + E

click managed debugging assistants
and UNCHECK
contextSwitchDeadlock

Save , rebuild and you should be good to go :) Screenshot

ContextSwitchDealdlock
0

Featured Post

Live: Real-Time Solutions, Start Here

Receive instant 1:1 support from technology experts, using our real-time conversation and whiteboard interface. Your first 5 minutes are always free.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

This tutorial demonstrates one way to create an application that runs without any Forms but still has a GUI presence via an Icon in the System Tray. The magic lies in Inheriting from the ApplicationContext Class and passing that to Application.Ru…
It’s quite interesting for me as I worked with Excel using vb.net for some time. Here are some topics which I know want to share with others whom this might help. First of all if you are working with Excel then you need to Download the Following …
Migrating to Microsoft Office 365 is becoming increasingly popular for organizations both large and small. If you have made the leap to Microsoft’s cloud platform, you know that you will need to create a corporate email signature for your Office 365…
Two types of users will appreciate AOMEI Backupper Pro: 1 - Those with PCIe drives (and haven't found cloning software that works on them). 2 - Those who want a fast clone of their boot drive (no re-boots needed) and it can clone your drive wh…

816 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

9 Experts available now in Live!

Get 1:1 Help Now