Threat zaten başlı başına kasmasına yeterli. Belli bir süre sonra deadlock bile olabilir. Sürekli memory'i kontrol etmen gerek test yaparken.
Yazdığın kod anlamsız geldi bana. Exception'da vermiyor değil mi?
Sen datasource'u null yapıp başka birşeye bind etmediğinde boş gösteriyor mu?
Thread ile datagridview doldurma sorunu
17
●1.815
- 08-01-2013, 18:16:14
protected override void OnPaint(System.Windows.Forms.PaintEventArgs e) { try { base.OnPaint(e); } catch (Exception ex) { this.Invalidate(); } }OnPaint metodunu override edip dene bide - 08-01-2013, 20:55:52Thread yapmadan zaten kasan bir programı nasıl kasmasını önleyebilirim ki ?rob33n adlı üyeden alıntı: mesajı görüntüle
Şuan çok basitmiş gibi geldi kod ama sql'den datatable çektinden sonra ki gelen veri min 150 satır maks için sınır yok gelen veriyi eğer var ise bir önceki çekilen datatable ile karşılaştırıyor farklı olanları grid üzerinde renkli uyarı filan veriyor ve bunu yeri geliyor çok kısa süreler aralığı ile yapması gerekiyor. Thread'siz yaptığımda 3 gb ram'i olan makine bile kasıyor. Başka önerileriniz varsa şöyle yapsan hem kasmaz hemde grid'deki bu sorun olmaz dediğiniz süper olur benim için.
Tray catch yakalayamıyor heryerde bir sürü tray catch varken bile .net hatası veriyor direk program
Evet null yaptığımda boş oluyor.
Bu kod'da işe yaramadı malesef.kabuscobar adlı üyeden alıntı: mesajı görüntüle - 08-01-2013, 21:17:13Sıkıntısız çalışıyor. Thread ile de ilk thread de sıkıntı yok ama ikinci veya üçüncü thread de gümlüyor. Studio üzerinden çalıştırıken sadece çarpı işareti çıkıyor ama direk dosyayı açsam .net hatası veriyor oda şu şekilde.Dzyn3 adlı üyeden alıntı: mesajı görüntüle
Bu iletişim kutusu yerine JIT hata ayıklamayı çağırma hakkında detaylı bilgi için bu iletinin sonuna bakın. ************** Özel Durum Metni ************** System.NullReferenceException: Nesne başvurusu bir nesnenin örneğine ayarlanmadı. konum: System.Windows.Forms.DataGridViewTextBoxCell.PaintPrivate(Graphics graphics, Rectangle clipBounds, Rectangle cellBounds, Int32 rowIndex, DataGridViewElementStates cellState, Object formattedValue, String errorText, DataGridViewCellStyle cellStyle, DataGridViewAdvancedBorderStyle advancedBorderStyle, DataGridViewPaintParts paintParts, Boolean computeContentBounds, Boolean computeErrorIconBounds, Boolean paint) konum: System.Windows.Forms.DataGridViewTextBoxCell.Paint(Graphics graphics, Rectangle clipBounds, Rectangle cellBounds, Int32 rowIndex, DataGridViewElementStates cellState, Object value, Object formattedValue, String errorText, DataGridViewCellStyle cellStyle, DataGridViewAdvancedBorderStyle advancedBorderStyle, DataGridViewPaintParts paintParts) konum: System.Windows.Forms.DataGridViewCell.PaintWork(Graphics graphics, Rectangle clipBounds, Rectangle cellBounds, Int32 rowIndex, DataGridViewElementStates cellState, DataGridViewCellStyle cellStyle, DataGridViewAdvancedBorderStyle advancedBorderStyle, DataGridViewPaintParts paintParts) konum: System.Windows.Forms.DataGridViewRow.PaintCells(Graphics graphics, Rectangle clipBounds, Rectangle rowBounds, Int32 rowIndex, DataGridViewElementStates rowState, Boolean isFirstDisplayedRow, Boolean isLastVisibleRow, DataGridViewPaintParts paintParts) konum: System.Windows.Forms.DataGridViewRow.Paint(Graphics graphics, Rectangle clipBounds, Rectangle rowBounds, Int32 rowIndex, DataGridViewElementStates rowState, Boolean isFirstDisplayedRow, Boolean isLastVisibleRow) konum: System.Windows.Forms.DataGridView.PaintRows(Graphics g, Rectangle boundingRect, Rectangle clipRect, Boolean singleHorizontalBorderAdded) konum: System.Windows.Forms.DataGridView.PaintGrid(Graphics g, Rectangle gridBounds, Rectangle clipRect, Boolean singleVerticalBorderAdded, Boolean singleHorizontalBorderAdded) konum: System.Windows.Forms.DataGridView.OnPaint(PaintEventArgs e) konum: System.Windows.Forms.Control.PaintWithErrorHandling(PaintEventArgs e, Int16 layer, Boolean disposeEventArgs) konum: System.Windows.Forms.Control.WmPaint(Message& m) konum: System.Windows.Forms.Control.WndProc(Message& m) konum: System.Windows.Forms.DataGridView.WndProc(Message& m) konum: System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m) konum: System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m) konum: System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam) ************** Yüklü Derlemeler ************** mscorlib Derleme Sürümü: 2.0.0.0 Win32 Sürümü: 2.0.50727.5420 (Win7SP1.050727-5400) CodeBase: file:///C:/Windows/Microsoft.NET/Framework/v2.0.50727/mscorlib.dll ---------------------------------------- mscorlib.resources Derleme Sürümü: 2.0.0.0 Win32 Sürümü: 2.0.50727.5420 (Win7SP1.050727-5400) CodeBase: file:///C:/Windows/Microsoft.NET/Framework/v2.0.50727/mscorlib.dll ---------------------------------------- KuponIstatistik Derleme Sürümü: 1.0.0.0 Win32 Sürümü: 1.0.0.0 CodeBase: file:///C:/Users/ust/Desktop/KuponIstatistik/bin/Debug/KuponIstatistik.exe ---------------------------------------- System.Windows.Forms Derleme Sürümü: 2.0.0.0 Win32 Sürümü: 2.0.50727.5420 (Win7SP1.050727-5400) CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System.Windows.Forms/2.0.0.0__b77a5c561934e089/System.Windows.Forms.dll ---------------------------------------- System Derleme Sürümü: 2.0.0.0 Win32 Sürümü: 2.0.50727.5420 (Win7SP1.050727-5400) CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System/2.0.0.0__b77a5c561934e089/System.dll ---------------------------------------- System.Drawing Derleme Sürümü: 2.0.0.0 Win32 Sürümü: 2.0.50727.5420 (Win7SP1.050727-5400) CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System.Drawing/2.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll ---------------------------------------- System.Data Derleme Sürümü: 2.0.0.0 Win32 Sürümü: 2.0.50727.5420 (Win7SP1.050727-5400) CodeBase: file:///C:/Windows/assembly/GAC_32/System.Data/2.0.0.0__b77a5c561934e089/System.Data.dll ---------------------------------------- System.Xml Derleme Sürümü: 2.0.0.0 Win32 Sürümü: 2.0.50727.5420 (Win7SP1.050727-5400) CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System.Xml/2.0.0.0__b77a5c561934e089/System.Xml.dll ---------------------------------------- System.Configuration Derleme Sürümü: 2.0.0.0 Win32 Sürümü: 2.0.50727.5420 (Win7SP1.050727-5400) CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System.Configuration/2.0.0.0__b03f5f7f11d50a3a/System.Configuration.dll ---------------------------------------- System.Windows.Forms.resources Derleme Sürümü: 2.0.0.0 Win32 Sürümü: 2.0.50727.4927 (NetFXspW7.050727-4900) CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System.Windows.Forms.resources/2.0.0.0_tr_b77a5c561934e089/System.Windows.Forms.resources.dll ---------------------------------------- System.Core Derleme Sürümü: 3.5.0.0 Win32 Sürümü: 3.5.30729.5420 built by: Win7SP1 CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System.Core/3.5.0.0__b77a5c561934e089/System.Core.dll ---------------------------------------- System.Transactions Derleme Sürümü: 2.0.0.0 Win32 Sürümü: 2.0.50727.4927 (NetFXspW7.050727-4900) CodeBase: file:///C:/Windows/assembly/GAC_32/System.Transactions/2.0.0.0__b77a5c561934e089/System.Transactions.dll ---------------------------------------- System.EnterpriseServices Derleme Sürümü: 2.0.0.0 Win32 Sürümü: 2.0.50727.5420 (Win7SP1.050727-5400) CodeBase: file:///C:/Windows/assembly/GAC_32/System.EnterpriseServices/2.0.0.0__b03f5f7f11d50a3a/System.EnterpriseServices.dll ---------------------------------------- ************** JIT Hata Ayıklama ************** JIT hata ayıklamayı etkinleştirmek için, bu uygulamanın veya bilgisayarın (machine.config) .config dosyasında system.windows.forms bölümünde jitDebugging değeri ayarlanmış olmalıdır. Ayrıca uygulama hata ayıklama etkin durumdayken derlenmiş olmalıdır. Örneğin: <configuration> <system.windows.forms jitDebugging="true" /> </configuration> JIT hata ayıklama etkinken, işlenmemiş özel durumlar bu iletişim kutusunda işlenmek yerine bilgisayarda kayıtlı JIT hata ayıklayıcısına gönderilir. - 08-01-2013, 21:53:40Sanırım Thread' ı oluşturmadan önce datagridin source değerini null yaparsanız sorun çözülecektir. Yani aşağıdaki gibi
private void timer1_Tick(object sender, EventArgs e) { datagrdMac.DataSource = null; Thread thread1 = new Thread(new ThreadStart(yeni)); CheckForIllegalCrossThreadCalls = false; thread1.Start(); } - 08-01-2013, 23:38:39@Dzyn3 teşekkürler bu şekilde çalıştırdım. Şuana kadar 1 sefer hata verdi onda da artık 1 sn de filan denedim null değerini atıyamadıDzyn3 adlı üyeden alıntı: mesajı görüntüle
. Süper oldu bu...
@rob33n senden de özür diliyorum daha önceden bu kodu söylemiştin ama ben farklı bir noktada kullanmıştım.

. Süper oldu bu...