Programiranje u C++-u - pitanja i odgovori izdvojena tema

poruka: 7.285
|
čitano: 1.713.916
|
moderatori: Lazarus Long, XXX-Man, vincimus
+/- sve poruke
ravni prikaz
starije poruke gore
13 godina
neaktivan
offline
Re: Programiranje u C++-u - pitanja i odgovori

Samo ne znam da li smije na natjecanju koristiti funkciju max()?

15 godina
offline
Re: Programiranje u C++-u - pitanja i odgovori
royalhero kaže...

Samo ne znam da li smije na natjecanju koristiti funkciju max()?

Zašto se ne bi smio? Sve standradne biblioteke se smiju koristiti na natjecanju. Na državnom čak, na natjecateljskom računalu, bude cijela referenca STL-a dostupna tijekom natjecanja.

"Let us work without theorizing... 'tis the only way to make life endurable." - Voltaire
13 godina
neaktivan
offline
Programiranje u C++-u - pitanja i odgovori

Koja je razlika između desktop i windows aplikacije ?

 
0 0 hvala 0
15 godina
neaktivan
offline
Re: Programiranje u C++-u - pitanja i odgovori
royalhero kaže...

Samo ne znam da li smije na natjecanju koristiti funkciju max()?

Pa zar je problem tu funkciju napisati ako baš i ne smije koristiti onu iz standardne biblioteke?

 

int max(int a, int b)
{
    if (a<b)
        return b;
   
    return a;
}

 

Velik posao :D

Oscar-Mike-Golf Whiskey-Tango-Foxtrot
13 godina
neaktivan
offline
Re: Programiranje u C++-u - pitanja i odgovori
captain_soap_McTawish kaže...
royalhero kaže...

Samo ne znam da li smije na natjecanju koristiti funkciju max()?

Zašto se ne bi smio? Sve standradne biblioteke se smiju koristiti na natjecanju. Na državnom čak, na natjecateljskom računalu, bude cijela referenca STL-a dostupna tijekom natjecanja.

Nisam znao, ja mislio da se samo mogu iostream i cstdlib koristiti.

Fuhrer kaže...

Koja je razlika između desktop i windows aplikacije ?

U operativnom sistemu, Windows aplikacija se može izvoditi samo na Windows-u, Linux aplikacija samo na Linuxu, sve su to desktop aplikacije. Da si pitao koja je razlika između desktop i Web aplikacije imalo bi smisla.


@rustweaver, {#}

Poruka je uređivana zadnji put pet 27.7.2012 16:14 (royalhero).
17 godina
offline
Programiranje u C++-u - pitanja i odgovori

Trebam primjer programa za "ovu nit vrti na ovoj jezgri". Nešto jednostavno (npr ispis Hello world ili slično), ali da pravilno koristi SetThreadAffinityMask i/ili ThreadIdealProcessor.

Može i nekakvo računanje ili nešto, glavno da optereti samo jednu jezgru i to ne prvu nego da mu je u programu definirano koju.

Problem je što ne pronalazim nigdje nekakav osnovni primjer, nešto elementarno. A treba mi. Hvala.

Prodajem RAGE za PS3: http://www.bug.hr/forum/topic/igre-accounti-igrama/prodaja-igra-rage-playstation-3/129629.aspx?page=0&amp;amp;jumpto=2529211&amp;amp;sort=asc&amp;amp;view=flat
Moj PC  
0 0 hvala 0
13 godina
neaktivan
offline
Re: Programiranje u C++-u - pitanja i odgovori
191x7 kaže...

Trebam primjer programa za "ovu nit vrti na ovoj jezgri". Nešto jednostavno (npr ispis Hello world ili slično), ali da pravilno koristi SetThreadAffinityMask i/ili ThreadIdealProcessor.

Može i nekakvo računanje ili nešto, glavno da optereti samo jednu jezgru i to ne prvu nego da mu je u programu definirano koju.

Problem je što ne pronalazim nigdje nekakav osnovni primjer, nešto elementarno. A treba mi. Hvala.

 I mene zanima to. Samo nemam mjesta odakle početi.

 

Zanima me kako se u programu računanje nečega postavi na npr 3. i 4. jezgru, kako se postavi da se sve jezgre iskorištavaju na 100%, kako se detektuju jezgre i tako to. Ako je neko voljan nek puca linkove.

Dafuq I just read?
15 godina
neaktivan
offline
Re: Programiranje u C++-u - pitanja i odgovori
191x7 kaže...

Trebam primjer programa za "ovu nit vrti na ovoj jezgri". Nešto jednostavno (npr ispis Hello world ili slično), ali da pravilno koristi SetThreadAffinityMask i/ili ThreadIdealProcessor.

SetThreadAffinityMask prima dva parametra. Prvi je handle od threada čiji affinity mask pokušavaš mijenjati, a drugi parametar je dword (32 bitni integer), koji predstavlja masku bitova.

 

Recimo da imaš slijedeću masku:

00000000000000000000000000001101

Thread je označen da se može vrtiti samo na prvoj, trećoj i četvrtoj jezgri.

 

Ili za:

00000000000000000000000000001001

Tada samo na prvoj i četvrtoj jezgri.

 

Naravno, ti se brojevi tako ne pišu, to je samo vizualizacija da zamisliš bitove unutar integera kao on/off switcheve (tj. takozvane zastavice odnosno flags). Prvi broj je zapravo 13, a drugi broj je 9.

 

SaidSikiraX kaže...

kako se postavi da se sve jezgre iskorištavaju na 100%

Nikako. Ne postoji windows API funkcija IskoristiJezgruStoposto. Ti možeš izvršavati određeni programski kod na nekoj od jezgri te time uzeti zauzeti određeni postotak procesorskog vremena. Koliki? To je posve prepušteno tebi. OS ti omogućava stvaranje threadova, dodjeljivanje threadova određenim jezgrama i postavljanje prioriteta svakom threadu, dalje si prepušten sam sebi...

 

SaidSikiraX kaže...

kako se detektuju jezgre i tako to

GetSystemInfo kojem proslijediš pointer na SYSTEM_INFO strukturu kao parametar. Nakon toga iz te strukture čitaš ono što te zanima.

Oscar-Mike-Golf Whiskey-Tango-Foxtrot
Poruka je uređivana zadnji put pet 27.7.2012 17:31 (rustweaver).
17 godina
offline
Re: Programiranje u C++-u - pitanja i odgovori
SaidSikiraX kaže...

 I mene zanima to. Samo nemam mjesta odakle početi.

 

Zanima me kako se u programu računanje nečega postavi na npr 3. i 4. jezgru, kako se postavi da se sve jezgre iskorištavaju na 100%, kako se detektuju jezgre i tako to. Ako je neko voljan nek puca linkove.

Ovo ti može pomoći, bar možeš u to gledati "wtf did I just read" kao ja ak ništ drugo:

http://www.dreamincode.net/forums/topic/52380-multi-threading-on-multi-processors/

Prodajem RAGE za PS3: http://www.bug.hr/forum/topic/igre-accounti-igrama/prodaja-igra-rage-playstation-3/129629.aspx?page=0&amp;amp;jumpto=2529211&amp;amp;sort=asc&amp;amp;view=flat
15 godina
neaktivan
offline
Re: Programiranje u C++-u - pitanja i odgovori
191x7 kaže...

Ovo ti može pomoći, bar možeš u to gledati "wtf did I just read" kao ja ak ništ drugo:

http://www.dreamincode.net/forums/topic/52380-multi-threading-on-multi-processors/

Joj, imaš 3 definirane funkcije i jednu petlju. Osim WINAPI funkcija (čiji opis trebaš potražiti na MSDN-u), što ti tu ima biti nejasno?

 

#define WIN32_LEAN_AND_MEAN
#include <windows.h>
#include <stdio.h>

HANDLE *m_threads = NULL;
DWORD_PTR WINAPI threadMain(void *p);

DWORD_PTR GetNumCPUs()
{
    SYSTEM_INFO m_si = {0, };
    GetSystemInfo(&m_si);
    return(DWORD_PTR)m_si.dwNumberOfProcessors;
}

int main(int argc, wchar_t **args)
{
    DWORD_PTR c = GetNumCPUs();

    m_threads = new HANDLE[c];

    for (DWORD_PTR i = 0; i < c; i++)
    {
        DWORD_PTR m_id = 0;
        DWORD_PTR m_mask = 1 << i;

        m_threads[i] = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)threadMain, (LPVOID)i, NULL, &m_id);
        SetThreadAffinityMask(m_threads[i], m_mask);

        wprintf(L"Creating Thread %d (0x%08x) Assigning to CPU 0x%08x\r\n", i, (LONG_PTR)m_threads[i], m_mask);
    }

    return 0;
}

DWORD_PTR WINAPI threadMain(void *p)
{

    return 0;
}

 

Oscar-Mike-Golf Whiskey-Tango-Foxtrot
17 godina
offline
Re: Programiranje u C++-u - pitanja i odgovori
rustweaver kaže...
191x7 kaže...

Ovo ti može pomoći, bar možeš u to gledati "wtf did I just read" kao ja ak ništ drugo:

http://www.dreamincode.net/forums/topic/52380-multi-threading-on-multi-processors/

Joj, imaš 3 definirane funkcije i jednu petlju. Osim WINAPI funkcija (čiji opis trebaš potražiti na MSDN-u), što ti tu ima biti nejasno?

 

...

 

To je prijatelju primjer s linka koji sam dao.

Ono što je nejasno su ti silni DWORD_PTR i hrpa drugih gluposti. Npr implementacija istog putem _beginthread() umjesto CreateThread.

Osim toga npr prvi #define je nepotreban, program radi i bez toga. Zašto je to tako?

Već neko vrijeme proučavam taj primjer i napokon ću nešto konkretno i naučiti. A ono što spominješ s MSDN-a je kao objašnjavanje nogometa vanzemaljcu s kojim ni komunicirati ne znaš.

Napisano je, ali kao da Sequoia ide objašnjavati SuperMUC-u a da to čita trgovački kalkulator.

Prodajem RAGE za PS3: http://www.bug.hr/forum/topic/igre-accounti-igrama/prodaja-igra-rage-playstation-3/129629.aspx?page=0&amp;amp;jumpto=2529211&amp;amp;sort=asc&amp;amp;view=flat
15 godina
neaktivan
offline
Re: Programiranje u C++-u - pitanja i odgovori
191x7 kaže...

To je prijatelju primjer s linka koji sam dao.

Znam što je to, malo sam ga samo posložio i ovdje zalijepio da se vidi a ne da se mora klikati na link.

 

191x7 kaže...

Ono što je nejasno su ti silni DWORD_PTR i hrpa drugih gluposti.

To su tipovi podataka definirani za uporabu u windows API funkcijama, običan typedef, ništa posebno ni zastrašujuće. Iako ih ima puno:

http://msdn.microsoft.com/en-us/library/windows/desktop/aa383751%28v=vs.85%29.aspx

 

Često ne moraš uopće razbijati glavu time što se zapravo krije iza određenog tipa podatka, samo ih upikneš na prava mjesta tamo gdje se traže.

 

Ali evo u ovom konkretnom slučaju možeš vidjeti da se iza DWORD_PTR krije ULONG_PTR, e sada, da znaš takozvani hungarian notation odmah bi ti iz imena bilo jasno što je ULONG a što PTR, ali kako vjerojatno ne znaš potražiš na gornjoj listi ULONG_PTR i otkriješ da je riječ o "unsigned long" tipu podatka, što znači da je i DWORD_PTR zapravo "unsigned long".

 

191x7 kaže...

Npr implementacija istog putem _beginthread() umjesto CreateThread.

_beginthread() i CreateThread() rade istu stvar, samo na malo različite načine:

http://support.microsoft.com/kb/104641/en-us

 

Tako da ni sa time ne moraš razbijati glavu, koja god od te dvije funkcije je u igri znaš da na tom mjestu nastaje novi thread.

 

191x7 kaže...
Osim toga npr prvi #define je nepotreban, program radi i bez toga. Zašto je to tako?

Da si u google opalio WIN32_LEAN_AND_MEAN odmah bi ti sve bilo jasnije.

http://www.gamedev.net/topic/544437-what-does-define-win32_lean_and_mean-actually-do/

http://blogs.msdn.com/b/oldnewthing/archive/2009/11/30/9929944.aspx

 

Ništa posebno i ništa bez čega ne možeš. Ali se taj macro uvukao pod kožu ljudima koji često rade sa WINAPI-jem pa ga automatski stavljaju iako više i ne čini toliku razliku.

 

191x7 kaže...

A ono što spominješ s MSDN-a je kao objašnjavanje

Učenje je na početku uvijek teško i naporno. Kada shvatiš osnovu WINAPI filozofije (a budeš nakon što ga duže budeš koristio), sve će ti postati jasno i logično...

Oscar-Mike-Golf Whiskey-Tango-Foxtrot
13 godina
neaktivan
offline
Programiranje u C++-u - pitanja i odgovori

Ok,nesto sam gledao oko pokazivaca i malo skuzio ali je ne kuzim sta ce mi ta memorijska adresa,imat cu 2 varijable koje ce uvijek biti sinkronizirane,jedino mogu npr imat neku privatnu varjablu u klasi i stavit pokazivac na nju tako da joj ocitam i promjenim vrijednost izvan klase.

HUGE RESPECT: woodgamesfx, captain_soap_McTawish, rustweaver, royalhero, tracerCPP,Indestructible
Moj PC  
0 0 hvala 0
13 godina
neaktivan
offline
Re: Programiranje u C++-u - pitanja i odgovori

A šta je sa predavanjima argumenata po referenci funkcijama?

13 godina
neaktivan
offline
Programiranje u C++-u - pitanja i odgovori

Mozes li mi objasnit sta je to?

HUGE RESPECT: woodgamesfx, captain_soap_McTawish, rustweaver, royalhero, tracerCPP,Indestructible
Moj PC  
0 0 hvala 0
13 godina
neaktivan
offline
Re: Programiranje u C++-u - pitanja i odgovori

Pa kada želiš da predaš argumente nekoj funkciji po adresi. Tj. ne predaš kao argument vrijednost nego adresu te funkcije u memorijskom bloku funkcije iz koje je ta varijabla.

 

Primjer:
#include<iostream>

using namespace std;

void ispisi_broj(int* broj)

{

   cout<<*broj<<endl;

}

int main()

{

   int n;

   cin>>n;

   ispisi_broj(&n);

   return 0;

}

13 godina
neaktivan
offline
Programiranje u C++-u - pitanja i odgovori

A zasto bih zelio napraviti tako nesto?

HUGE RESPECT: woodgamesfx, captain_soap_McTawish, rustweaver, royalhero, tracerCPP,Indestructible
Moj PC  
0 0 hvala 0
13 godina
neaktivan
offline
Re: Programiranje u C++-u - pitanja i odgovori

Pa zato sto svaka funkcija ima svoj memorijski prostor. Ako zelis raditi sa istom varijablom u vise funkcija moras koristiti ili globalne varijable ili pokazivace. Kada predas adresu varijable funkciji tada ona radi sa tom adresom, odnosno tom vrjeenoscu na adresi koja nije u memorijskom bloku te funkcije.

 

I da, zaboravio sam reci, polja. Kada predajes polje funkciji kao argument, u biti joj predajes adresu prvog elementa u nizu. 

Poruka je uređivana zadnji put ned 29.7.2012 1:03 (royalhero).
17 godina
offline
Programiranje u C++-u - pitanja i odgovori
Zelim pokrenuti tri threada na drugoj procesorskoj jezgri, da svaki thread traje odredjeno i razlicito vrijeme i da se ne odvijaju istodobno vec jedan thread za drugim. Kako mi je to najjednostavnije implementirati? Molim pomoc. Hvala.
Ne moraju nuzno biti niti, mogu biti i procesi odvojeni.
Prodajem RAGE za PS3: http://www.bug.hr/forum/topic/igre-accounti-igrama/prodaja-igra-rage-playstation-3/129629.aspx?page=0&amp;amp;jumpto=2529211&amp;amp;sort=asc&amp;amp;view=flat
Moj PC  
0 0 hvala 0
15 godina
neaktivan
offline
Re: Programiranje u C++-u - pitanja i odgovori
191x7 kaže...
Zelim pokrenuti tri threada na drugoj procesorskoj jezgri, da svaki thread traje odredjeno i razlicito vrijeme i da se ne odvijaju istodobno vec jedan thread za drugim.

Ako imaš serijsko izvođenje tri različite radnje, što će ti tri threada za to? Uopće ne trebaš threadove...

Oscar-Mike-Golf Whiskey-Tango-Foxtrot
Poruka je uređivana zadnji put uto 31.7.2012 13:07 (rustweaver).
17 godina
offline
Re: Programiranje u C++-u - pitanja i odgovori

Ok, preformulirati ću pitanje.

Dakle želim u c++ isprogramirati program koji će raditi nekoliko nečega (recimo da je nebitno čega, npr ispis poruke) pri čemu svako od tog nečega ima različito vrijeme izvršavanja, a da se sve odvija na određenoj jezgri i redom koji ja zadam. Kasnije bih to trebao proširiti da se određuje koja jezgra što da radi i kojim redoslijedom. Dakle raspoređivanje po jezgrama, da to ne radi OS sam.

Prodajem RAGE za PS3: http://www.bug.hr/forum/topic/igre-accounti-igrama/prodaja-igra-rage-playstation-3/129629.aspx?page=0&amp;amp;jumpto=2529211&amp;amp;sort=asc&amp;amp;view=flat
Poruka je uređivana zadnji put uto 31.7.2012 13:32 (191x7).
15 godina
neaktivan
offline
Re: Programiranje u C++-u - pitanja i odgovori
191x7 kaže...

Dakle želim u c++ isprogramirati program koji će raditi nekoliko nečega (recimo da je nebitno čega, npr ispis poruke) pri čemu svako od tog nečega ima različito vrijeme izvršavanja, a da se sve odvija na određenoj jezgri i redom koji ja zadam. Kasnije bih to trebao proširiti da se određuje koja jezgra što da radi i kojim redoslijedom. Dakle raspoređivanje po jezgrama, da to ne radi OS sam.

Sve što trebaš je ovdje:

 

Process and Thread Functions

Time Functions

 

Ali mislim da si opet zagrizao više nego što možeš progutati...

Baš si se uhvatio multithreadinga i kojekakvih benchmarka, čovjek bi očekivao da ćeš do sada to već znati pjevati u snu. :S

Oscar-Mike-Golf Whiskey-Tango-Foxtrot
Poruka je uređivana zadnji put uto 31.7.2012 13:52 (rustweaver).
17 godina
offline
Re: Programiranje u C++-u - pitanja i odgovori
rustweaver kaže...

Ali mislim da si opet zagrizao više nego što možeš progutati...

Baš si se uhvatio multithreadinga i kojekakvih benchmarka, čovjek bi očekivao da ćeš do sada to već znati pjevati u snu. :S

Hvala na linkovima.

Ne trebaju mi benchmarci, nije mi to bit.

Al ovo što trebam; zbog toga noću ne spavam, i kad spavam imam noćne more od toga.

Zagrizao sam koliko jesam, ali to progutati moram. Inače će biti loše, jako loše.

Prodajem RAGE za PS3: http://www.bug.hr/forum/topic/igre-accounti-igrama/prodaja-igra-rage-playstation-3/129629.aspx?page=0&amp;amp;jumpto=2529211&amp;amp;sort=asc&amp;amp;view=flat
14 godina
neaktivan
offline
Re: Programiranje u C++-u - pitanja i odgovori
191x7 kaže...
rustweaver kaže...

Ali mislim da si opet zagrizao više nego što možeš progutati...

Baš si se uhvatio multithreadinga i kojekakvih benchmarka, čovjek bi očekivao da ćeš do sada to već znati pjevati u snu. :S

Hvala na linkovima.

Ne trebaju mi benchmarci, nije mi to bit.

Al ovo što trebam; zbog toga noću ne spavam, i kad spavam imam noćne more od toga.

Zagrizao sam koliko jesam, ali to progutati moram. Inače će biti loše, jako loše.

Programer ne brine o threadovima već OS i to s razlogom. To je kao da u C++u koristiš assembler za deklaraciju varijable umjesto već postojećeg automatskog memorijskog managementa. Radije tu energiju iskoristi za nešto drugo.

 

Inače, thredovi se mogu izvršavati "paraleno" i paralelno. Pod navodnicima - thredovi se simultano jedan po jedan izvršavaju u istoj jezgri (svaki thread se izvršava određeni dio vremena pa to liči kao paralelno) dok stvarni paralelni rad je kada se thredovi izvršavaju u različitim jezgrama. Tu su još i različiti prioriteti thredova u ovisnosti o kojima procesor određuje koliko i kada se pojedini thread izvršava itd. Sve u svemu to nije nešto čime bi se ti trebao zamarati jer na kraju ćeš samo napraviti eventualnu pogrešku ukoliko to budeš pokušavao sam realizirati.

Kada lajavci laju onda završe ovako: http://i471.photobucket.com/albums/rr77/toropreto/2012-07-0813_30_07.gif
13 godina
neaktivan
offline
Re: Programiranje u C++-u - pitanja i odgovori
TracerCPP kaže...

Programer ne brine o threadovima već OS i to s razlogom. To je kao da u C++u koristiš assembler za deklaraciju varijable umjesto već postojećeg automatskog memorijskog managementa. Radije tu energiju iskoristi za nešto drugo.

Možda je čovjek hobist i želi to učiti na malo nižem nivou. Ako ima vremena i volje, zašto ne?

14 godina
neaktivan
offline
Programiranje u C++-u - pitanja i odgovori

Da bi to učio na nižem nivou prethodno trebaš imati dobru teoretsku podlogu. Tek kada shvaćaš što se unutra događa i s kojim razlogom onda se može pričati o nekoj custom implementaciji i zašto bi ona imala smisla.

Kada lajavci laju onda završe ovako: http://i471.photobucket.com/albums/rr77/toropreto/2012-07-0813_30_07.gif
Moj PC  
0 0 hvala 0
17 godina
offline
Programiranje u C++-u - pitanja i odgovori

Ma nije iz hobija nego iz nužde. Radi se o raspoređivanju poslova na višejezgrenom procesoru bez da se OS upliće.

Dakle oni algoritmi raspoređivanja tipa FCFS (First Come First Served), SJF (Shortes Job First), LJF (Longest Job Fist) itd.

Zamislite si to ovako; imamo tri jezreni procesor i na njega dolazi recimo 9 zadataka, svaki s drugačijim vremenom izvršavanja.

I onda recimo prva jezgra da uhvati prvi zadatak koji joj dođe druga najkraći a recimo treća najduži. I ona prva koja zarši svoj prvi zadatak uzima sebi drugi adatak po istom algoritmu po kojem je uzela svoj prvi. Kužite sad?

Prodajem RAGE za PS3: http://www.bug.hr/forum/topic/igre-accounti-igrama/prodaja-igra-rage-playstation-3/129629.aspx?page=0&amp;amp;jumpto=2529211&amp;amp;sort=asc&amp;amp;view=flat
Moj PC  
0 0 hvala 0
15 godina
neaktivan
offline
Re: Programiranje u C++-u - pitanja i odgovori
191x7 kaže...

Ma nije iz hobija nego iz nužde. Radi se o raspoređivanju poslova na višejezgrenom procesoru bez da se OS upliće.

Ukratko, implementiraš primitivan CPU scheduler i baviš se tim područjem, tako reci ljudima...

Oscar-Mike-Golf Whiskey-Tango-Foxtrot
17 godina
offline
Re: Programiranje u C++-u - pitanja i odgovori
rustweaver kaže...
191x7 kaže...

Ma nije iz hobija nego iz nužde. Radi se o raspoređivanju poslova na višejezgrenom procesoru bez da se OS upliće.

Ukratko, implementiraš primitivan CPU scheduler i baviš se tim područjem, tako reci ljudima...

Tako nekako. I teško je.

Prodajem RAGE za PS3: http://www.bug.hr/forum/topic/igre-accounti-igrama/prodaja-igra-rage-playstation-3/129629.aspx?page=0&amp;amp;jumpto=2529211&amp;amp;sort=asc&amp;amp;view=flat
14 godina
neaktivan
offline
Re: Programiranje u C++-u - pitanja i odgovori
191x7 kaže...
Zamislite si to ovako; imamo tri jezreni procesor i na njega dolazi recimo 9 zadataka, svaki s drugačijim vremenom izvršavanja.

I onda recimo prva jezgra da uhvati prvi zadatak koji joj dođe druga najkraći a recimo treća najduži. I ona prva koja zarši svoj prvi zadatak uzima sebi drugi adatak po istom algoritmu po kojem je uzela svoj prvi. Kužite sad?

OS sve to ima implementirano (automatski organizirano) i ne vidim čemu izmišljanje mlake vode. Usto, ne vidim što bi tom svom custom implementacijom postigao, ubrzao ili sl., a da ne govorim o problemima realizacije semafora ili kritičnih sekcija kod thredova takvog tipa.

Kada lajavci laju onda završe ovako: http://i471.photobucket.com/albums/rr77/toropreto/2012-07-0813_30_07.gif
E-mail:
Lozinka:
 
vrh stranice