Idozites Win/VB6.0 alatt

tiszaii tiszaii at axelero.hu
Sat Jan 10 07:58:31 CET 2004


QueryPerformanceCounter(...)
QueryPerformanceFrequency(...)
ms és talán us-es tartományban is hatásos fg.-nyek (megfelelő prioritású 
threadben), nekem van egy delay(..) fg-em amely ms-re működik, de az 
c++-ben van.
Párhuzamos portot használnék, ehhez van egy közvetlen elérést
biztositó driver és lib. a neve Dlportio, de CBuilders és Deplhis.
a fg-em ms-re, de szerintem us-re is jó lehet, ha átirod:
"void delay(double millsec)
{
     static LARGE_INTEGER _tstart, _tend;
     double data=0;
     static LARGE_INTEGER fre;
     int k;

     static int first = 1;
     millsec/=1000;
     while (true)
     {
         if(first)
         {
             QueryPerformanceFrequency(&fre);
             first = 0;
         }
         QueryPerformanceCounter(&_tstart);
         for(k=0;k<10;k++);
         QueryPerformanceCounter(&_tend);
        if (millsec < data)
             return;
         data+=((double)_tend.QuadPart -
                     (double)_tstart.QuadPart)/(double)fre.QuadPart;

     }
}"


-- 
Tiszai Istvan
http://tiszaii.fw.hu




More information about the Elektro mailing list