eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.comp.programming › czy do tego potrzebny jest nowy watek?
Ilość wypowiedzi w tym wątku: 6

  • 1. Data: 2009-03-06 16:00:52
    Temat: czy do tego potrzebny jest nowy watek?
    Od: SNC <s...@i...pl>

    Witam, potrzebuje napisac program, ktory wylaczal by sie po
    nacisnieciu entera, robilem cos takiego while(getchar()!=10){ .... }
    ale to dziala tak ze czeka ciagle na znak, a ja chcem zeby rzeczy
    bedace w tej petli ciagle sie robily az to momentu nacisniecia entera.
    Chodzi o to ze getchar blokuje, jak to sie da wykonac? Czy trzeba
    stwozyc nowy watek w programie? Jesli tak to prosze mniej wiecej o
    zarys jak to powinno wygladac.


  • 2. Data: 2009-03-06 16:15:43
    Temat: Re: czy do tego potrzebny jest nowy watek?
    Od: Jacek Czerwinski <...@...z.pl>

    SNC pisze:
    > Witam, potrzebuje napisac program, ktory wylaczal by sie po
    > nacisnieciu entera, robilem cos takiego while(getchar()!=10){ .... }
    > ale to dziala tak ze czeka ciagle na znak, a ja chcem zeby rzeczy
    > bedace w tej petli ciagle sie robily az to momentu nacisniecia entera.
    > Chodzi o to ze getchar blokuje, jak to sie da wykonac? Czy trzeba
    > stwozyc nowy watek w programie? Jesli tak to prosze mniej wiecej o
    > zarys jak to powinno wygladac.

    Bosch kolego jakie s'rodowisko ? Linux? Konsola Win ?

    Nie jestem znawca; ale jakos' na getchar() wa;tków by sie ba?.


  • 3. Data: 2009-03-06 16:20:24
    Temat: Re: czy do tego potrzebny jest nowy watek?
    Od: Wojciech Muła <w...@p...null.onet.pl.invalid>

    SNC <s...@i...pl> wrote:

    > Witam, potrzebuje napisac program, ktory wylaczal by sie po
    > nacisnieciu entera, robilem cos takiego while(getchar()!=10){ .... }
    > ale to dziala tak ze czeka ciagle na znak, a ja chcem zeby rzeczy
    > bedace w tej petli ciagle sie robily az to momentu nacisniecia entera.
    > Chodzi o to ze getchar blokuje, jak to sie da wykonac? Czy trzeba
    > stwozyc nowy watek w programie? Jesli tak to prosze mniej wiecej o
    > zarys jak to powinno wygladac.

    Wątki są niepotrzebne, zerknij na to: http://en.wikipedia.org/wiki/Conio.h.
    Interesuje Cię funkcja kbhit.

    w.


  • 4. Data: 2009-03-06 17:55:58
    Temat: Re: czy do tego potrzebny jest nowy watek?
    Od: SNC <s...@i...pl>

    Srodowisko to raczej linux, chcialem zeby pytanie bylo bardziej
    ogolne.

    Jacek Czerwinski napisał(a):
    > SNC pisze:
    > > Witam, potrzebuje napisac program, ktory wylaczal by sie po
    > > nacisnieciu entera, robilem cos takiego while(getchar()!=10){ .... }
    > > ale to dziala tak ze czeka ciagle na znak, a ja chcem zeby rzeczy
    > > bedace w tej petli ciagle sie robily az to momentu nacisniecia entera.
    > > Chodzi o to ze getchar blokuje, jak to sie da wykonac? Czy trzeba
    > > stwozyc nowy watek w programie? Jesli tak to prosze mniej wiecej o
    > > zarys jak to powinno wygladac.
    >
    > Bosch kolego jakie s'rodowisko ? Linux? Konsola Win ?
    >
    > Nie jestem znawca; ale jakos' na getchar() wa;tk�w by sie ba?.


  • 5. Data: 2009-03-06 18:14:36
    Temat: Re: czy do tego potrzebny jest nowy watek?
    Od: Jacek Czerwinski <...@...z.pl>

    SNC pisze:
    > Srodowisko to raczej linux, chcialem zeby pytanie bylo bardziej
    > ogolne.

    Z tego co wiem, na Unixach do ambitniejszej niż strumień klawiatury
    używa się curses/ncurses


  • 6. Data: 2009-03-06 20:04:00
    Temat: Re: czy do tego potrzebny jest nowy watek?
    Od: "Marcin 'Qrczak' Kowalczyk" <q...@k...org.pl>

    On 6 Mar, 18:55, SNC <s...@i...pl> wrote:

    > Srodowisko to raczej linux, chcialem zeby pytanie bylo bardziej
    > ogolne.

    Pod Linuxem nie trzeba do tego używać wątków, ale trzeba się
    przestawić z stdio na API Unixa (funkcja read), przełączywszy strumień
    stdin (deskryptor 0) w tryb nieblokujący:

    int flags = fcntl(fd, F_GETFL);
    if (flags == -1) {...}
    if (fcntl(fd, F_SETFL, flags | O_NONBLOCK) == -1) {...}

    Nie należy mieszać stdio z API Unixa dla danego pliku, a stdio nie
    działa w trybie nieblokującym.

strony : [ 1 ]


Szukaj w grupach

Szukaj w grupach

Eksperci egospodarka.pl

1 1 1

Wpisz nazwę miasta, dla którego chcesz znaleźć jednostkę ZUS.

Wzory dokumentów

Bezpłatne wzory dokumentów i formularzy.
Wyszukaj i pobierz za darmo: