abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 04:33 | Nová verze

    Open source software pro úpravu digitálních fotografií LightZone (Wikipedie) byl vydán v nové verzi 5.0.0. LightZone je dnes k dispozici pod licencí BSD. Původně se jednalo o proprietární software vyvíjený společností Light Crafts. Ta v prosinci 2012 souhlasila s uvolněním zdrojových kódů jako open source [Wayback Machine].

    Ladislav Hagara | Komentářů: 0
    včera 17:22 | Nová verze

    Byla vydána verze 0.84 telnet a ssh klienta PuTTY (Wikipedie). Podrobnosti v přehledu nových vlastností a oprav chyb a Change Logu.

    Ladislav Hagara | Komentářů: 0
    22.5. 19:44 | IT novinky

    Microsoft představil Azure Linux 4.0 a Azure Container Linux. Na konferenci Open Source Summit North America 2026 organizované konsorciem Linux Foundation a sponzorované také Microsoftem. Azure Linux 4.0 vychází z Fedora Linuxu. Azure Container Linux je založen na projektu Flatcar. Azure Linux (GitHub, Wikipedie) byl původně znám jako CBL-Mariner.

    Ladislav Hagara | Komentářů: 0
    22.5. 12:22 | Zajímavý článek

    Nové číslo časopisu Raspberry Pi zdarma ke čtení: Raspberry Pi Official Magazine 165 (pdf).

    Ladislav Hagara | Komentářů: 0
    22.5. 10:55 | Nová verze

    Byla vydána verze 9.2 open source virtualizační platformy Proxmox VE (Proxmox Virtual Environment, Wikipedie) založené na Debianu. Přehled novinek v poznámkách k vydání a informačním videu.

    Ladislav Hagara | Komentářů: 5
    22.5. 09:33 | IT novinky

    Firefox 151 podporuje Web Serial API. Pro komunikaci s různými mikrokontroléry připojenými přes USB nebo sériové porty už není nutné spouštět Chrome nebo na Chromiu postavené webové prohlížeče.

    Ladislav Hagara | Komentářů: 8
    22.5. 04:44 | Nová verze

    Byla vydána nová stabilní verze 8.0 webového prohlížeče Vivaldi (Wikipedie). Postavena je na Chromiu 148. Přehled novinek i s náhledy v příspěvku na blogu.

    Ladislav Hagara | Komentářů: 0
    21.5. 21:33 | Bezpečnostní upozornění

    Ve FreeBSD byla nalezena a opravena zranitelnost FatGid aneb CVE-2026-45250. Jedná se o lokální eskalaci práv. Neprivilegovaný uživatel se může stát rootem.

    Ladislav Hagara | Komentářů: 0
    21.5. 14:33 | IT novinky

    Společnost Flipper Devices oznámila Flipper One. Zcela nový Flipper postavený od nuly. Jedná se o open-source linuxovou platformu založenou na čipu Rockchip RK3576. Hledají se dobrovolníci pro pomoc s dokončením vývoje (ovladače, testování, tvorba modulů).

    Ladislav Hagara | Komentářů: 2
    21.5. 14:00 | Nová verze

    Vývojáři Wine oznámili vydání verze 2.0 knihovny vkd3d pro překlad volání Direct3D na Vulkan. Přehled novinek na GitLabu.

    Ladislav Hagara | Komentářů: 0
    Které desktopové prostředí na Linuxu používáte?
     (12%)
     (8%)
     (2%)
     (14%)
     (31%)
     (4%)
     (6%)
     (3%)
     (16%)
     (26%)
    Celkem 1695 hlasů
     Komentářů: 30, poslední 3.4. 20:20
    Rozcestník
    Štítky: není přiřazen žádný štítek

    Dotaz: pthread - použití/vysvětlení

    3.12.2008 20:31 Radek
    pthread - použití/vysvětlení
    Přečteno: 615×

    zdravím ve spolek, snažím se trochu pochopit vícevláknové aplikace, zkoušel jsem i něco napsat, nicméně nechápu jednu věc (viz. příklad)

     

      1 #include <unistd.h>
      2 #include <pthread.h>
      3 #include <stdlib.h>
      4 #include <stdio.h>
      5 void *thread_func( void *vptr_args );
      6 int main( void ){
      7     int j;
      8     pthread_t thread;
      9     pthread_create( &thread, NULL,
     10             &thread_func, NULL );
     11     for( j= 0; j < 20; ++j ){
     12         fprintf( stdout, "a " );
     13         sleep(1);
     14     }
     15     pthread_join( thread, NULL );
     16     fprintf(stdout, "\n");
     17     exit( EXIT_SUCCESS );
     18 }
     19 void *thread_func( void *vptr_args ){
     20     int j;
     21     for( j= 0; j < 10; ++j ){
     22         fprintf( stderr, " b " );
     23         sleep(4);
     24     }
     25     return NULL;
     26 }
     

    pokud zadam časy sleep(time) delší, pak mi vypise a b a b ..., ale pokud jsou časy krátké, pak to nejdříve vypíše thread_function a poté najednou main.

    Chtěl bych vysvětlit proč, předpokládal jsem, že to jaksi pojede oboje najednou, i kdyby tam žádný sleep nebyl. Chápu, že na jednoprocesorovém počítači se vykonává jedna věc v daném čase, ale nicméně, bych předpokládal, že systém na určitou dobu přidělí čas jednomu vláknu a pak druhému, a tudíž se budou střídat..

    díky

    Odpovědi

    3.12.2008 20:50 johniez | skóre: 17 | blog: xyz | Praha
    Rozbalit Rozbalit vše Re: pthread - použití/vysvětlení

    Nehraje tam nějakou roli to, že je výstup bufferován?

    3.12.2008 21:08 Andrej Herceg | skóre: 43
    Rozbalit Rozbalit vše Re: pthread - použití/vysvětlení
    Navyše jedno má výstup do stdout a druhé do stderr.
    3.12.2008 21:18 Radek
    Rozbalit Rozbalit vše Re: pthread - použití/vysvětlení

    to mi nedoslo, ze je to zpusobeno tim bufferovanim...

    takze kdyby ta fce ciste jen neco pocitala a v main fci by se take neco pocitalo, tak by to jelo opravdu oboje najednou  na dvou jadrovem procesoru? Nejsem si prave jist tim, jestli vlakna mohou jet opravdu na ruznych procesorech (jestli system umi kazdemu vlaknu pridelit jiny procesor) nebo je to az kdyz je aplikace viceprocesova napr. pomoci fork.

    3.12.2008 22:31 johniez | skóre: 17 | blog: xyz | Praha
    Rozbalit Rozbalit vše Re: pthread - použití/vysvětlení

    Vlákna na úrovni jádra OS můžou jet na více procesorech.

    Bluebear avatar 3.12.2008 23:07 Bluebear | skóre: 30 | blog: Bluebearův samožerblog | Praha
    Rozbalit Rozbalit vše Re: pthread - použití/vysvětlení

    Nevím, jestli je to tak úmyslně, ale v thread_func() píšeš do stderr, zatímco v main() píšeš do stdout. Stdout používá buffering, zatímco stderr ne; tipoval bych, že aspoň část problému bude tady.

    To mi připomíná, jak jsem si pořídil květináč, že v něm budu mít květinu. Opravdu tam byla, ale potom být přestala...
    Bluebear avatar 3.12.2008 23:07 Bluebear | skóre: 30 | blog: Bluebearův samožerblog | Praha
    Rozbalit Rozbalit vše Re: pthread - použití/vysvětlení

    Pozdě :-(

    To mi připomíná, jak jsem si pořídil květináč, že v něm budu mít květinu. Opravdu tam byla, ale potom být přestala...

    Založit nové vláknoNahoru

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.