al kardesim, can skntisina yazdim bisyler. 2 sn'de bir kolon degistiren sayisal loto programi :) iki thread ile uretici-tuketici problemi ;-). bir thread veriyi koyar, digeri ise veriyi isler... bu boyle surer gider. using System;using System. Collections. Generic;using System. ComponentModel;using System. Data;using System. Drawing;using System. Linq;using System. Text;using System. Windows. Forms;using System. Threading;namespace WindowsFormsApplication1{ public partial class Form2 : Form { private int m_numbers = new int ; private AutoResetEvent m_areSync1 = new AutoResetEvent ; private AutoResetEvent m_areSync0 = new AutoResetEvent ; private delegate void delRefresh ; public Form2 private void MyInitialize private void thrRefreshListbox { delRefresh refresh = new delRefresh ; for } private void thrChangeList { for (; ; Thread. Sleep(2000)) } private void RefreshListbox { this. numbersListbox. Items. Clear ; for (int i = 0; i < 6; ++i) } private void FillListUniqueNumbers { int i, j, nmb; Random rnd = new Random DateTime. Now. Ticks); for (i = 0; i < 6; ++i) { AGAIN: nmb = rnd. Next(1, 60); for (j = i; j > 0; --j) m_numbers = nmb; } } }} ..

: Programlama olarak bilmiyorm fakat yapmak istediğini yapan back up programları dolu. İncelersen biri bu konuda. http://tahribat.com/Forum-Bilgisayariniza-Takilan-Usb-Cdrom-Daki-Verileri-Calin-Resimli-61147/ İlgin alakan yeter kardeşim sağol ama bahsettiğim şey çok farklı bişey what makes you think i am not?

thread şart değil application. idle eventine bir fonksiyon ata. bu fonksiyonu sürekli çağırır. net framework. sonra o fonksiyona if mantığını yerleştirirsin. sonraki işlememe geçmez dolayısıyla. Bu bilinen ve çok kullanılan bir yntem zellikle c# ta yapılan oyunların render loop'larında. threadda kullanılan while(1) 'dan daha pratik diyebilirim Düşünüyorum, o halde varım.

kendi dizini oluşturacaksın hocam, bi class aç, kendi listini oluşturmak için IList interface'inden türet ve implement et, orada zaten metodlar gelecek mesela insert metodunda diziye eleman eklemenin yanında birde istediğin gibi thred çalıştırabilirsin yani diziye bir veri eklendiğini yakalaybilirsin, remove metodu falanda var biraz uğraş bakalım :) - xx yerde hata var. - ya aslında kod şyle sanıyor olabilir bla bla bla - olm kendine gel kodlar düşünmez - ...

Java'da "event handling" denen olay var, C# karşılığını bilmiyorum. Java // http://www.google.com/#hl=en&source=hp&q=java+event+handling&aq=1&aqi=g10&aql=&oq=java+event+&gs_rfai=&fp=93c3c78db929eee0 C# // http://www.google.com/#hl=en&q=c%23+event+handling&aq=f&aqi=g3&aql=&oq=&gs_rfai=&fp=93c3c78db929eee0 Sen hiç kaval çaldın mı?

Proje yetiştirme telaşından bu olay bugün yarım kaldı. Yarın geceye kadar çzücem. nerileri de deneyeceğim sonuçları burdan bildiririm what makes you think i am not?

: "Ne zamanki dizi boyutu değişti..." dediğin noktaya odaklanırsak şunun aşikar olduğunu sen de kabul edersin. 1. C#'ta nesnelere Listener eklenebiliyorsa Nesneye eklediğin Listener içerisinde dizinin boyutunun değiştiğini algılarsın ve thread. interrupt gibi bir kod ile bahsettiğin Thread'i tetiklersin. 2. C#'ta nesnelere Listener eklenemiyorsa Bu dizinin boyu mutlaka ve sadece programın herhangi bir yerinde çağırılan bir kod ile değişir. Metafiziksel varlıkların değiştirecek hali yok. İşte o kodun çağırıldığı yerin hemen altında thread. interrupt koduyla bahsettiğin Thread'i tetiklersin. NOT: C# syntaxı bilmiyorum o yüzden "thread. interrupt " dediğim kod geçerli olmayabilir ama mantık interrupt mantığıdır. Kardeşim valla benim de takıldığım kısım zaten senin 1. açıklamadaki parantez içi :) nesnelere listener eklenebiliyor mu? Ama şimdilik 2. şıkkını denemeye çalışayım o da çok mantıklı. what makes you think i am not?

"Ne zamanki dizi boyutu değişti..." dediğin noktaya odaklanırsak şunun aşikar olduğunu sen de kabul edersin. 1. C#'ta nesnelere Listener eklenebiliyorsa Nesneye eklediğin Listener içerisinde dizinin boyutunun değiştiğini algılarsın ve thread. interrupt gibi bir kod ile bahsettiğin Thread'i tetiklersin. 2. C#'ta nesnelere Listener eklenemiyorsa Bu dizinin boyu mutlaka ve sadece programın herhangi bir yerinde çağırılan bir kod ile değişir. Metafiziksel varlıkların değiştirecek hali yok. İşte o kodun çağırıldığı yerin hemen altında thread. interrupt koduyla bahsettiğin Thread'i tetiklersin. NOT: C# syntaxı bilmiyorum o yüzden "thread. interrupt " dediğim kod geçerli olmayabilir ama mantık interrupt mantığıdır. d. d.

dizi ne erişen fonksiyonları kendi yazacağın bir fonksiyon ile değiştir. ftw

Hocam tamam da benim sorunum elimdeki veri nesne değil, dizi. Mesela düşün "string dizi". bu dizinin boyutu değiştiğinde nasıl tetikleyeceğimi koda dkemiyorum. Buton olsa click'i alırsın falan filan. Bu dizide tetiklemeyi ne yapıcak nasıl yapacak what makes you think i am not?

bu bir senkronizasyon meselesi. using System; using System. Threading; class ThreadingExample { static AutoResetEvent autoEvent; static void DoWork static void Main } msdn'den ornek kod. bu da link http://msdn.microsoft.com/en-us/library/ms173179.aspx..

Şimdi müridler olay tam olarak şu. Bu proje çok bir büyük bir proje ve her fonksiyon giriş-çıkışında log tutuluyor. Dolayısıyla bazı logları yazması uzun sürdüğünden o sırada başka istek geldiğinde çakıyor. Ben de şyle düşündüm log yazma işlemi şyle devam etsin; gelsin bir diziye yada collection sınıfından List'e kaydettsin işine devam etsin diğer taraf yani log yazma ile uğraşmasın. Ve dizide değişiklik olduğu anda bir thread ile arka planda log için diziden eleman alınıp oluşturulsun. Dizide değişilik olduğunu anlamayı sizlerin de fikirlerinden yola çıkarak aştım şyleki; ... AddArray ; // Ekleme işlemi için fonk. çağırıyoruz, bylece dizide değişiklik olduğunu anlıyoruz :) ... private void AddArray //Dizimize eleman eklemek için bu fonk. çağırıyoruz Takıldığım yer diziye eleman eklemeyi fonksiyonda yapmayı akıl edemediğim kısımdı. Uzun oldu ama belki byle birşey işine yarayan olur diye ayrıntılı açıklama gereği hissetim. Yardımlar için teşekkür ederim... what makes you think i am not?

Bugün bir soruyla karşılaştım ve çzemedim soru şyle; C# da benim bir dizim var. Arka planda bir thread olacak ama uyku durumda. Ne zamanki dizi boyutu değişti bir tetikleyici diyecekki kalk dizinin boyutu değişti bu diziyi al. Bu thread uyku durumdan kalkacak diziyi alıp gerekli yere kaydedip tekrar uyku durumuna geçecek. Sorun bu. Benim şuan ki sistemim belirli zaman aralıklarıyla diziyi kontrol ediyor ve değişiklik varsa bu işlemleri yapıyor. Bu da tabiki performans ve zaman kaybı. Yukarda belirttiğim sistem mümkün mü nasıl? what makes you think i am not?

Programlama olarak bilmiyorm fakat yapmak istediğini yapan back up programları dolu. İncelersen biri bu konuda. http://tahribat.com/Forum-Bilgisayariniza-Takilan-Usb-Cdrom-Daki-Verileri-Calin-Resimli-61147/