Thread Watchdog - Delphi örnek - indir

mikron24

Aktif Üye
Katılım
8 Ekim 2022
Mesajlar
723
Mikrodenetleyici programlarından bildiğimiz Watchdog uygulamasını bilgisayar için yaptım.

Thread ile çalışırken bir şeylerin ters gitmesi ve kilitlenme durumları için yararlıdır.

Donanım kaynaklı kilitlenmeler, bu yöntemi zorunlu hale getirdi.

Çalışma şekli:

Bir thread işe başlamadan önce, bir süre sonra kendisini sonlandıracak başka bir thread başlatıyor.
İşi zamanında yapabilirse katili kendisi öldürüyor.

1681992937177.png



Kod:
unit Unit1;
....

procedure TWorker.Execute;

var
  dog: TWatchDog;

begin

  dog := TWatchDog.Create(true); // dog: kendisini öldürecek thread
  dog.th := self;
  dog.TimeTowait := 5000;
  dog.Resume;

  while not terminated do
  begin
    windows.beep(5000, 50); // "Yaşıyorum" mesajı.
    sleep(500);

    // Süre bitmeden  katilin işine son vermek isterse
    //  if vazgectim then do ThreadKill(dog); // katili öldür

  end;

end;

procedure TWatchDog.Execute;
begin
  sleep(timetowait);
  windows.Beep(3000, 500); // Süre tamam. Ateş ediyor

  if assigned(th) then
    ThreadKill(th);

end;

procedure TForm1.Button1Click(Sender: TObject);

begin

  worker := tworker.Create(false);

end;

end.
 

Ekler

  • ThreadWatchDog.zip
    197.9 KB · Görüntüleme: 55
Son düzenleme:

Çevrimiçi personel

Forum istatistikleri

Konular
5,978
Mesajlar
101,944
Üyeler
2,514
Son üye
evrenbasaran

Son kaynaklar

Son profil mesajları

deneyci wrote on hakan8470's profile.
Sibonge uNkulunkulu ngokuhlukahluka asinike kona.

Bu hangi dil? :)
Lyewor_ wrote on taydin's profile.
Merhabalar. Elektrik laboratuvarınız varsa bunun hakkında bir konunuz var mı acaba? Sizin laboratuvarınızı merak ettim de :)
Lyewor_ wrote on taydin's profile.
Merhabalar forumda yeniyim! Bir sorum olacaktı lcr meterler hakkında. Hem bobini ölçen hemde bobin direnci ölçen bir lcr meter var mı acaba?
gruptaki arkadaşlara selamlar. sıteyi bu gün fark ettim. Asansör için 2x7 segment LCD gösterge üretmek istiyorum. acaba bu sayfadaki arkadaşlardan destek alabilirmiyim. LCD nin mantık açılımı ektedir.
deneyci wrote on TA3UIS's profile.
Selam.
Amatör telsiz lisansı nasıl alınıyor?
Lisansı olmayanı forumlarına almıyorlar. :)
Bilgi alamıyoruz.
Back
Top