Witamy na forum PC Format Zapraszamy do REJESTRACJI


Użytkownicy przeglądający ten wątek: 1 gości

[Delphi]Zatrzymanie wykonywania funkcji bez naruszenia reszty programu

#1
Ściana  [Delphi]Zatrzymanie wykonywania funkcji bez naruszenia reszty programu
Cześć! Krzywy
Szukam czegoś, co zatrzyma mi wykonywanie funkcji z timera bez naruszenia reszty programu. Próbowałem Sleep, SleepEx, ale to nic nie daje Smutek Zatrzymuje mi komunikat i kicha Wściekły Myślałem o tym, aby dowalić taką pętlę, że procesor obciąży się na te 100 x 1ms (konkretnie pobieram dane z komunikatu i musi być tak, że przez 100ms program będzie sprawdzał (co 1ms), czy dane z komunikatu zgadzają się z pewną wytyczną), które potrzebuję do zatrzymania, ale ciężko będzie wycyrklować taką wartość pętli (o ile się w ogóle da), a poza tym na innych procesorach może być kicha. Zna ktoś jakieś konkretne rozwiązanie? Ysz

Ogólnie chodzi o to, żeby przez 100ms sprawdzać dane. Jeśli ktoś ma inny pomysł jak to wykonać - proszę pisać Wesoły

Proszę o pomoc.
 System operacyjny: windows_seven Przeglądarka: opera
#2
RE: [Delphi]Zatrzymanie wykonywania funkcji bez naruszenia reszty programu
Nie znam delphi, ale.. czy nie możesz użyć instrukcji warunkowej if?

begin
if(dane_komunikatu != wytyczna)
czekaj dalej
end
Pozdrawiam.
Ajgor
 System operacyjny: windows_xp_2003 Przeglądarka: chrome
#3
RE: [Delphi]Zatrzymanie wykonywania funkcji bez naruszenia reszty programu
Warunek mam, ale co w zamian za czekaj, czekaj? Przez czekaj, czekaj zatrzymuje mi się cały program łącznie z komunikatem, dlatego założyłem ten wątek, aby dowiedzieć się, co w zamian za czekaj, czekaj podstawić Szczerbol
 System operacyjny: windows_seven Przeglądarka: opera
#4
RE: [Delphi]Zatrzymanie wykonywania funkcji bez naruszenia reszty programu
Zamknij to w niekończącej się pętli for Wesoły Sprawdzasz warunek, który jest nieprawdziwy, a po spełnieniu instrukcji if zmieniasz warunek pętli for na prawdziwy. Wtedy pętla for będzie czekała w nieskończoność, chyba, że instrukcja if zmieni warunek.
Pozdrawiam.
Ajgor
 System operacyjny: windows_xp_2003 Przeglądarka: chrome
#5
RE: [Delphi]Zatrzymanie wykonywania funkcji bez naruszenia reszty programu
(04.09.2010, 14:27)Ajgor napisał(a): Zamknij to w niekończącej się pętli for Wesoły Sprawdzasz warunek, który jest nieprawdziwy, a po spełnieniu instrukcji if zmieniasz warunek pętli for na prawdziwy. Wtedy pętla for będzie czekała w nieskończoność, chyba, że instrukcja if zmieni warunek.

Dobry plan, gdyby nie to, że potrzebuję zatrzymać na 100ms, a nie na czas nieokreślony. Boję się, że pętla nieskończona też zawiesi program i to jeszcze bardziej, niż Sleepy. Zużycie procesora podskoczy i może być niewesoło.
 System operacyjny: windows_seven Przeglądarka: opera
#6
RE: [Delphi]Zatrzymanie wykonywania funkcji bez naruszenia reszty programu
Zrób drugi wątek.
 System operacyjny: windows_xp_2003 Przeglądarka: firefox
#7
RE: [Delphi]Zatrzymanie wykonywania funkcji bez naruszenia reszty programu
Witam!

Rozwiązałem problem Wesoły Ostatecznie wyszło trochę inaczej niż z założeń w temacie. Nie sprawdzam, przez jaki czas mogę trzymać klawisz, tylko zwiększam zmienną, która jest odpowiedzialna za czas od zera i takim sposobem uzyskuję "progi" czasowe.

Chodzi o to, że mam powiedzmy tak:
Kod:
100 jakieś dane 200

a więc od 100ms do 200ms mogę mieć w zmiennej "jakieś dane", a po tych 200ms po prostu wygasa taka możliwość. Dwie pieczenie na jednym ogniu Krzywy

Dziękuję za zaangażowanie.
 System operacyjny: windows_seven Przeglądarka: opera
Programy: Polecane / Nowe / Inne



Użytkownicy forum szukali:
delphi jak zatrzymać programzakończenie funkcji delphizatrzymanie programu delphi

Podobne wątki ([Delphi]Zatrzymanie wykonywania funkcji bez naruszenia reszty programu)
Wątek: Autor Odpowiedzi: Wyświetleń: Ostatni post
  Wykres Funkcji w Javie wanhelsing 4 11479 17.02.2018, 22:27
Ostatni post: wanhelsing
  VisualBasic - tablicowanie wartości funkcji . samanta19 2 8074 20.01.2017, 01:01
Ostatni post: samanta19
  [C++] Zwracanie dwóch wartości z funkcji (szukanie w. maksymalnej - tablica) Chudy2000 3 8769 16.06.2016, 08:10
Ostatni post: Szachista

Skocz do:


Wybrane wątki ([Delphi]Zatrzymanie wykonywania funkcji bez naruszenia reszty programu)
Wątek: Autor Odpowiedzi: Wyświetleń: Ostatni post
Ściana Prosta gra w Builder C++ Kiranek1 1 8330 31.05.2019 15:20
Ostatni post: Szachista
  Menu (Nie widoczne długie opisy) wanhelsing 5 10420 28.04.2019 19:31
Ostatni post: koneton
  Skrypt usuwający pliki sylwiaa1 2 4332 28.04.2019 15:20
Ostatni post: sylwiaa1
  Środowisko do assemblera Physicist 4 9669 21.04.2019 14:04
Ostatni post: Ajgor
  VBA excel dmjs 6 9845 17.04.2019 10:20
Ostatni post: ptrick
  C++ - sens pogłębiania nauki gbr 5 9576 25.03.2019 12:53
Ostatni post: koneton
  Klasa wewnętrzna w C++ Physicist 4 9247 23.03.2019 18:28
Ostatni post: Physicist
  Ruby on Rails - tutoriale luciussulla 0 8385 23.03.2019 16:49
Ostatni post: luciussulla
Big Grin Czy dostane sie technikum informatycznego klaudiusz20046 6 11788 21.03.2019 01:28
Ostatni post: UnableToSee
  [C#] Program do moderacji czatów gier wiktrom12 0 8866 07.03.2019 15:33
Ostatni post: wiktrom12
  Mój pierwszy projekt - Pomoc rafal12999 1 9315 07.02.2019 22:01
Ostatni post: Szachista
  pomoc projekt scilab piesel18 2 10734 04.02.2019 09:03
Ostatni post: piesel18
  Szkoła Informatyczna Zikinan 1 9589 02.02.2019 17:59
Ostatni post: wojownikhaha
  [Java] Strona z zadaniami do rozwiązania i odpowiedziami rafal12999 2 10369 27.01.2019 13:44
Ostatni post: rafal12999
  kompilacja biblioteki Agui - cmake jurek2 0 9613 10.01.2019 13:12
Ostatni post: jurek2