2012-12-27 32 views
5

Przeżyłem a problem z interfejsem SetTimer API.Czasomierze w systemie Windows

Tylko dla ciekawości, jakie są moje inne opcje w Delphi?

+2

http://www.codeproject.com/Articles/1236/Timers-Tutorial#QueueTimers Wszystkie zostały opisane tutaj. Trochę się waham, czy korzystać z minutników multimedialnych, ale nadal działają one dobrze pod Windows 8. Tak czy inaczej, zegary kolejkowania lub zegary multimedialne zapewnią znacznie lepsze wyniki. – AudioGL

+0

Opublikuj jako odpowiedź proszę :) – ELCouz

+1

Możesz spojrzeć na [TJvThreadTimer] (http://wiki.delphi-jedi.org/wiki/JVCL_Help:TJvThreadTimer). Czasomierz wysokiej rozdzielczości, który działa na wątku wewnętrznym zamiast polegać na api okna. Może być używany bez uchwytu okna. –

Odpowiedz

3

Kiedy trzeba wykonać pracę według określonego harmonogramu, należy również zapytać, czy trzeba wykonać działa w wątkach. Istnieje ogromna różnica między obsługą zdarzeń licznika a pracą odczytywania z głównego wątku na osobne wątki, zarówno w sposobie ustawiania, jak i sposobu działania (biorąc pod uwagę, że coraz więcej sprzętu ma procesory wielordzeniowe).

Najbardziej podstawowym sposobem na to jest dziedziczenie z TThread, ale nie jest to tak proste. (Zobacz "Wątek" w oknie dialogowym Nowy projekt lub the documentation) Istnieje również liczba threading platforms for Delphi.

Powiązane problemy