( mrev | 2007. 03. 25., v – 19:41 )

Mi szállogat el? Az x-array0-nak el _kell_ szállnia (előbb-utóbb), a többinek elvileg nem szabadna.

"Viszont azt kitartóan nem értem, hogy miért nem használják ki a több magot."

Tudjuk-e biztosan, hogy a többmagos processzor==több processzor? Én nem tudom. Azt se tudom, hogy többprocesszoros gépen mindig magától kihasználódik-e minden CPU.

Egyprocesszoros gépen az a helyzet, hogy a tesztelési célokhoz képest túl ritkán vált az ütemező a különböző szálak között (Solarison különösen ritkán). Ezért van a programokban itt-ott egy-egy sleep(1), mert abból rájön az ütemező, hogy váltani lehet. Emiatt a CPU kihasználtság nem maximális. A sleepekkel talán érdemes kísérletezni.

A threads.exe esetében a teszt célja csak annyi, hogy nem fogynak-e el a threadid-k. Detach és join nélkül elfogynának. Azonkívül az is látszik, hogy 64 bites rendszeren a threadid-k 64 bitesek, tehát csak P típusú változóban lehet őket tárolni.

--
CCC3