Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

C++ tajmer pod konzolom

[es] :: C++ programiranje :: C++ tajmer pod konzolom

[ Pregleda: 1318 | Odgovora: 8 ]

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

nikoladsp
nikola radovanovic
trenutno-developer
novi sad

Član broj: 5455
Poruke: 183
*.ftn.ns.ac.yu



Profil

icon C++ tajmer pod konzolom10.06.2004. u 16:17

Cao,
interesuje me kako da napravim tjmer koji ce svakih 20 msec pozivati neku odredjenu funkciju.Tajmer mora biti vrlo precizan.Ne koristi se MFC i to mora da radi pod konzolom.Ima li neko ideju?

thanks.
Nikola
ja sam panker sa diplomom kod moje mame...
10.06.2004. u 16:17 

Dragi Tata

Član broj: 1958
Poruke: 3882
66.228.70.*

Sajt: www.novetehnologije.com


Profil

icon Re: C++ tajmer pod konzolom10.06.2004. u 16:23
Zavisi šta podrazumevaš pod "vrlo precizan". Nekad je dovoljan običan Win32 timer, primer ti je na:

http://simplesamples.info/Windows/ConsoleTimer.php

Ako ti stvarno treba veća preciznost, moraćeš da koristiš npr multimedijalne tajmere, samo u tom slučaju moraš da poznaješ višenitno programiranje, inače si u nevolji do guše.
10.06.2004. u 16:23 

nikoladsp
nikola radovanovic
trenutno-developer
novi sad

Član broj: 5455
Poruke: 183
*.ftn.ns.ac.yu



Profil

icon Re: C++ tajmer pod konzolom10.06.2004. u 16:48
Cao,
pod vrlo precizan podrazumevam da kasnjenje mora biti reda mikrosekundi(negde do recimo 100 mikrosec).Taj clanak sam vec vidio i probao ali se bojim da to "porukanje" unosi veliko kasnjenje.Sto se tice niti, to se ne usudjujem koristiti jer ni tu nisam bas siguran koliko treba svim tim procesima da se izvrse pa bi i tu kasnjenje bilo nedopustivo veliko.Sem toga cini mi se da ni sa nitima ne bih postigao neki preterani uspeh.Zasad mi je multimedijalni tajmer najpreciznije resenje.Ta mi stvarcica inace treba da bih kada saljem RTP pakete uzimao sistemsko vrene u NTP formatu i upisivao ih u poruke koje se salju i onda merim dziter.Pristizanje poruka nije poblem,tu koristim QueryPerformance... za merenje intervala izmadju pristiglih poruka.Ono sto me obeshrabruje i potice da zamolim za pomoc je to sto Win moze menjati recimo prioritet threadova i pitanje je koliko stvarno protekne vremena u budjenju/uspavljivanju niti.Sleep f-ja je recimo jako neprecizna.Da ne smaram vise, problem uopste nije jednostavan.Probacu nesto sa asemblerom i interaptima.

Hvala na pomoci.

nikola
ja sam panker sa diplomom kod moje mame...
10.06.2004. u 16:48 

Dragi Tata

Član broj: 1958
Poruke: 3882
66.228.70.*

Sajt: www.novetehnologije.com


Profil

icon Re: C++ tajmer pod konzolom10.06.2004. u 17:11
Hmmm, pre nego što kreneš, pročitaj ovo:

http://www.codeproject.com/system/simpletime.asp
10.06.2004. u 17:11 

nikoladsp
nikola radovanovic
trenutno-developer
novi sad

Član broj: 5455
Poruke: 183
*.ftn.ns.ac.yu



Profil

icon Re: C++ tajmer pod konzolom15.06.2004. u 08:08
Znaci,
nista od toga...
Da li bi to mogao izvesti sa asemblerom?

thanks & chers hooligans
ja sam panker sa diplomom kod moje mame...
15.06.2004. u 08:08 

Dragi Tata

Član broj: 1958
Poruke: 3882
66.228.70.*

Sajt: www.novetehnologije.com


Profil

icon Re: C++ tajmer pod konzolom16.06.2004. u 15:13
Nije problem u programskom jeziku, već u operativnom sistemu. Pod Windowsima ne možeš da pišeš RT aplikacije, bar ne u aplikativnom modu. Izgleda da je moguće nešto tako uraditi u kernel modu, pa ako si spreman da učiš pisanje device drivera, možda i uradiš nešto.

Da li baš moraš da koristiš Windows? Možeš li da izabereš neki RTOS?
16.06.2004. u 15:13 

ned
Australia

Član broj: 1263
Poruke: 23
*.lowrp1.vic.optusnet.com.au



Profil

icon Re: C++ tajmer pod konzolom24.06.2004. u 13:02
Prvi odgovor, "multimedia timers" je resenje. Kernel mode timers nisu
precizniji.
----------------------------------------
24.06.2004. u 13:02 

plavsa2
Milan Plavsic
Beograd

Član broj: 26726
Poruke: 52
195.178.35.*

ICQ: 10572709


Profil

icon Re: C++ tajmer pod konzolom02.07.2004. u 14:15
ako radis pod DOS-om nije problem, samo iskoristis hardwerski timer0 iz PS-a i preobratis ga iz 55ms u 100ms i to ti je fixirano kao quarz, jednostavno ti svakih 100ms poziva tvoju interrupt proceduru.

imam source ako ti treba
02.07.2004. u 14:15 

Dejan Lozanovic
Senior Software Developer - Team Leader , www.limores..
Beograd

Član broj: 691
Poruke: 1992
*.vdial.verat.net

Jabber: null@elitesecurity.org
Sajt: www.limores.net


Profil

icon Re: C++ tajmer pod konzolom02.07.2004. u 15:50
A ako koristis npr neki unix onda pozivom funkcije
select() funkcije gde ne bi gledao ni jedan file deskriptor i tu mozes da dobijas podelu u mikrosekundama, ili pselect gde imas podelu u nanosekundama
"E tako se to radi , kratko ali j.e.b.i.t.a.c.n.o"
Degojs car - http://www.elitesecurity.org/t306994
02.07.2004. u 15:50 

[es] :: C++ programiranje :: C++ tajmer pod konzolom

[ Pregleda: 1318 | Odgovora: 8 ]

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.