Haberler:

Forum kuralları güncellendi LÜTFEN  okuyunuz:  https://bit.ly/2IjR3ME

Ana Menü

Oncelik devretme istegi

Başlatan bunalmis, 19 Haziran 2010, 15:30:02

z

Programim, ana program ve surekli dongude kosan threadden olusuyor.

Ana programa ait kodlar islerken kritik bir satira gelindiginde ana kod programinin isleyisinin durup derhal thread kodlarinin
kosmasini istiyorum.

Bunun sebebi, ana program kritik kod satirina geldiginde zaten bir donguye giriyor ve thread programindan veri bekliyor.

Bu noktada onceligi thredae verirse bir an once beklenen veriler gelecek demektir.
Bana e^st de diyebilirsiniz.   www.cncdesigner.com

z

Ana programda ilgili satira geldigimde sleep(1) yazmam beklentimi karsilarmi?
Bana e^st de diyebilirsiniz.   www.cncdesigner.com

t2


orhanc

procedure Sleep(MiliSecValue : cardinal);

description
Pauses program execution for a specified number of microseconds.

1 çok kısa bir süre windows için başka yöntemler denemelisin.
i'm doing nothing... Giddy Up  http://www.drorhan.com

mufitsozen

mutithreaded programlar arasinda haberlesme icin en kolay yol, "semaphore" dur. Programinda bir semaphore create et, sonra ana bolumde kritik noktaya gelip, threadler veri beklerken samphore'u bekle, threadler veri hazirlayinca, semaphore'ru set ederler boylece otomatik olarak oncelikler isletim sistemi tarafindan halledilir.

Aptalca bir soru yoktur ve hiç kimse soru sormayı bırakana kadar aptal olmaz.

z

Ana programda

Sleep komutu işletmeye başladığında windows neler yapıyor?
Application.processmessages dersek windows neler yapıyor?

Thread içinde sleep işletirsek windows neler yapıyor?
Bana e^st de diyebilirsiniz.   www.cncdesigner.com

orhanc

Sleep kısaca işlemi bekletmeye yarar

process message ise ana program işlem yaparken diğer olaylara tepki vermek içindir yani programın kilitlenmesini önler ancak çok fazla kullanılması da sakıncalıdır onun yerine thread kullanılmalıdır.
i'm doing nothing... Giddy Up  http://www.drorhan.com

z

Sleep dediğimizde kodumuz bekliyor. Fakat bu süre zarfında başka kodlar çalışıyor galiba.

Demek istediğim boşu boşuna zaman öldüren basit bir bekleme değil sanrım.
Bana e^st de diyebilirsiniz.   www.cncdesigner.com

orhanc

hangi procedure içinde çalıştırıyorsanız onu bekletiyor.
i'm doing nothing... Giddy Up  http://www.drorhan.com