Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

Funckja trwająca przez jakiś czas i inne problemy z czasem

Ostatnio zmodyfikowano 2012-01-27 19:12
Autor Wiadomość
dzinsy123
Temat założony przez niniejszego użytkownika
Funckja trwająca przez jakiś czas i inne problemy z czasem
» 2012-01-27 14:52:50
Cześć!

Chciałbym zapytać czy jest możliwość napisania programu w którym dana funkcja wykonywałaby się przez jakiś czas. Nie chcę timera z użyciem delay()/sleep() (!).

Chodzi o coś takiego (wartość w milisekundach):
C/C++
int funkcjax( void )
{
    start_countdown_timer( 10000 );
    if( start_countdown_timer <= 0 )
    {
        zrobcostam
    }
    else
    {
        wyjdz_z_funkcji_x
    }
}
P-49573
pekfos
» 2012-01-27 15:31:33
clock().
P-49575
dzinsy123
Temat założony przez niniejszego użytkownika
Prośba o sprecyzowanie
» 2012-01-27 16:54:56
OKej. Wiem że clock'iem można zmierzyć ilość w sekundach i obliczyć różnicę czasu od startu do końca. Proszę jednak żeby ktoś pomógł zrobić to w takim programie jak podałem bo zupełnie nie wiem jak mam to w takim przypadku zrobić.


I druga prośba związana z czasem.
Czy da się zrobić tak, że podczas działania jednej funkcji wykonuj cośtam a jak funkcja skończy się robić to przerwij? Chodzi mi o loading w grze (w czasie którego ładują się obrazki do pamięci)

Próbowałem to robić tak:
C/C++
while( !funkcja )
// coś tam
ale nie działa.

Niestety drugi mój sposób również okazał się błędny:
C/C++
funckja_b
{
    // lista czynności;
    return 0;
}
funckja_a();
if b() == 0
{
    // coś.
}
w konsekwencji tak czy siak wywołuje się ta funkcja i dopóki się nie skończy nie zostaje wykonana inna.

Proszę o pomoc ;)
P-49581
pekfos
» 2012-01-27 17:02:01
Czy da się zrobić tak, że podczas działania jednej funkcji wykonuj cośtam a jak funkcja skończy się robić to przerwij?
Da się.

W pierwszym poście chodzi ci o to, by funkcja wykonała kod X, jeśli jest wywołana n sekund po np pierwszym wywołaniu tej funkcji?
P-49584
dzinsy123
Temat założony przez niniejszego użytkownika
» 2012-01-27 17:40:07
generalnie na przykładzie:

załóżmy że robimy shootera
i ustawiamy czas 10 sekund na rundę

jeżeli 10 sekund nie upłynęło rób to (np sprawdzaj trafienia) a jeśli upłynęło wyjdź z funkcji.

w drugim chodzi mi zwykły loading i potrzebuję choćby zarysu takiego programu a przynajmniej wykorzystania funkcji

pozdrawiam ;)
P-49594
pekfos
» 2012-01-27 17:45:44
clock() + pętla. » KursyKurs C++ kurs

w drugim chodzi mi zwykły loading i potrzebuję choćby zarysu takiego programu a przynajmniej wykorzystania funkcji
Opisz dokładniej! Da się to zrobić na co najmniej 2 sposoby..
P-49596
dzinsy123
Temat założony przez niniejszego użytkownika
» 2012-01-27 18:42:54
siedzę nad tym clockiem i nic nie wymyśliłem ;/

przepraszam że tak trzeba mi podtykać pod nos ale wszystko co znalazłem opierało się na funkcji sleep lub delay a to odpada

co do loadingu
chodzi mi o coś takiego:
C/C++
int funckja_x( void )
{
    // zrob a;
   
}
C/C++
int funckja_b( void )
{
    //zaladujobrazki
}

wykonaj funkcję_b i dopóki cała się nie wykona wykonuj funkcję x.

może być też (kolejny problem? czy ten sam?):

funkcja_x

wykonaj funkcję x jednocześnie b razy
P-49603
pekfos
» 2012-01-27 19:12:23
A może wpadłeś na pomysł by poszukać w dokumentacji? -.-

Czyli chcesz jednocześnie wykonywać 2 funkcje? To jest możliwe ale szczerze wątpię, że to ogarniesz jak z clockiem masz problem.
P-49612
« 1 »
  Strona 1 z 1