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 12:22 | Nová verze Ladislav Hagara | Komentářů: 0
    včera 20:00 | Komunita

    Byly zpracovány a na YouTube zveřejněny videozáznamy z konference LinuxDays 2025.

    Ladislav Hagara | Komentářů: 0
    4.10. 15:22 | IT novinky

    Na konferenci LinuxDays 2025 byl oficiálně představen nový router Turris Omnia NG.

    Ladislav Hagara | Komentářů: 24
    4.10. 05:22 | Komunita

    Přímý přenos (YouTube) z konference LinuxDays 2025, jež probíhá tento víkend v Praze v prostorách FIT ČVUT. Na programu je spousta zajímavých přednášek.

    Ladislav Hagara | Komentářů: 12
    3.10. 22:44 | IT novinky

    V únoru loňského roku Úřad pro ochranu osobních údajů pravomocně uložil společnosti Avast Software pokutu 351 mil. Kč za porušení GDPR. Městský soud v Praze tuto pokutu na úterním jednání zrušil. Potvrdil ale, že společnost Avast porušila zákon, když skrze svůj zdarma dostupný antivirový program sledovala, které weby jeho uživatelé navštěvují, a tyto informace předávala dceřiné společnosti Jumpshot. Úřad pro ochranu osobních údajů

    … více »
    Ladislav Hagara | Komentářů: 6
    3.10. 19:00 | Nová verze

    Google Chrome 141 byl prohlášen za stabilní. Nejnovější stabilní verze 141.0.7390.54 přináší řadu novinek z hlediska uživatelů i vývojářů. Podrobný přehled v poznámkách k vydání. Opraveno bylo 21 bezpečnostních chyb. Za nejvážnější z nich (Heap buffer overflow in WebGPU) bylo vyplaceno 25 000 dolarů. Vylepšeny byly také nástroje pro vývojáře.

    Ladislav Hagara | Komentářů: 0
    3.10. 17:11 | Upozornění

    eDoklady mají kvůli vysoké zátěži technické potíže. Ministerstvo vnitra doporučuje vzít si sebou klasický občanský průkaz nebo pas.

    Ladislav Hagara | Komentářů: 23
    3.10. 17:00 | Komunita

    Novým prezidentem Free Software Foundation (FSF) se stal Ian Kelling.

    Ladislav Hagara | Komentářů: 1
    3.10. 14:33 | Komunita

    Na čem pracují vývojáři webového prohlížeče Ladybird (GitHub)? Byl publikován přehled vývoje za září (YouTube).

    Ladislav Hagara | Komentářů: 0
    3.10. 12:33 | Upozornění

    Vyšla kniha Počítačové programy a autorské právo. Podle internetových stránek nakladatelství je v knize "Významný prostor věnován otevřenému a svobodnému softwaru, jeho licencím, důsledkům jejich porušení a rizikům „nakažení“ proprietárního kódu režimem open source."

    javokajifeng | Komentářů: 0
    Jaké řešení používáte k vývoji / práci?
     (38%)
     (45%)
     (16%)
     (18%)
     (21%)
     (15%)
     (18%)
     (16%)
     (16%)
    Celkem 177 hlasů
     Komentářů: 12, poslední 4.10. 20:35
    Rozcestník
    Štítky: není přiřazen žádný štítek


    Vložit další komentář
    7.3.2017 00:50 Maxmilian Prdel
    Rozbalit Rozbalit vše Re: Nové OctaForge cíle, OctaSTD coroutines a další změny
    Jsi hovado, v tom nejlepsim slova smyslu. +1 za neskutecnou vydrz.
    7.3.2017 04:09 Sten
    Rozbalit Rozbalit vše Re: Nové OctaForge cíle, OctaSTD coroutines a další změny
    Zběžně jsem kouknul na GitHub a měl bych pár doporučení k C++:

    Používej explicit operator bool(). Implicitní operator bool() lze použít pro převod na číselné typy, což je náchylné na chyby:
    coroutine<void()> a = …;
    coroutine<void()> b = …;
    a + b;
    (Keyword: safebool)

    Pomocné metody typu swap je lepší uvádět jako friend void swap(type &a, type &b) { … } uvnitř tříd. Řeší to některé problémy s nutností hledat správný namespace a udržuje kód u toho, k čemu to patří. Při volání se pak místo
    void do_swap() {
        std::swap(a, b);
        ostd::swap(c, d);
        ostd::foo::swap(e, f); // Nebo to bylo ostd::bar::swap?
    }
    použije
    void do_swap() {
        using std::swap;
        swap(a, b);
        swap(c, d); // friend třídy instancí c a d, nepotřebuje namespace
        swap(e, f);
    }
    (Keyword: argument-dependent lookup)

    Místo
    type(type const&) = delete;
    type(type &&) = default;
    type& operator =(type const&) = delete;
    type& operator =(type &&) = default;
    doporučuji použít noncopyable á la Boost. Je to přehlednější a lépe se to používá v šablonovém metaprogramování.

    Jinak moc pěkný kód *thumbs up*
    7.3.2017 04:15 Sten
    Rozbalit Rozbalit vše Re: Nové OctaForge cíle, OctaSTD coroutines a další změny
    Jinak k tomu, proč použít swap(a, b) místo a.swap(b): to první funguje v šablonách, kde nemusím řešit, jestli ten typ má metodu swap nebo používá std::swap.
    7.3.2017 11:29 ---- | skóre: 33 | blog:
    Rozbalit Rozbalit vše Re: Nové OctaForge cíle, OctaSTD coroutines a další změny
    7.3.2017 11:26 ---- | skóre: 33 | blog:
    Rozbalit Rozbalit vše Re: Nové OctaForge cíle, OctaSTD coroutines a další změny
    Ono je možné použít std::swap i tak, protože ADL prostě hledá globální "swap" funkci v namespace toho typu, jestli je to friend je celkem jedno. Takže volání std::swap(foo::bar::T{}, foo::bar::T{}) první vyzkouší foo::bar::swap(a, b) a pak použije standardní obecný fallback. OctaSTD deklaruje jak vnitřní swap metody, tak samostatné funkce, stejně jako všechny standardní containery, takže je možné na nich použít jak x.swap(b), tak std::swap(a, b). Ty volné swap funkce jsou většinou deklarované hned po tom containeru, jako inline void swap(mytype &a, mytype &b) { a.swap(b); }.

    Ohledně toho explicitního boolu, záměrem je samozřejmě použít explicitní. Momentální použití implicitního je bug...
    7.3.2017 17:44 ---- | skóre: 33 | blog:
    Rozbalit Rozbalit vše Re: Nové OctaForge cíle, OctaSTD coroutines a další změny
    každopádně všechno opraveno... na jednom místě to opravdu nebylo ADL-aware, ale to jsem jen přehlédl na mé straně, teď je všechno v pořádku.
    7.3.2017 07:33 KS | skóre: 10 | blog: blg | Horní polní u západní dolní
    Rozbalit Rozbalit vše Re: Nové OctaForge cíle, OctaSTD coroutines a další změny
    Moc hezké!
    Pochybnost, nejistota - základ poznání
    skunkOS avatar 7.3.2017 09:29 skunkOS | skóre: 27 | blog: Tak nějak
    Rozbalit Rozbalit vše Re: Nové OctaForge cíle, OctaSTD coroutines a další změny
    Krutopřísné.
    http://martinrotter.github.io
    7.3.2017 23:44 tom
    Rozbalit Rozbalit vše Re: Nové OctaForge cíle, OctaSTD coroutines a další změny
    btw znate libcoro - http://software.schmorp.de/pkg/libcoro.html , primarne je to pouzite v Perlovskem Coro (ktere se hezky kombinuje s event loopem AnyEvent) a mimo to ji tvori jen jeden .c soubor a jedna hlavicka, takze pro zacleneni do jinejch projektu je to idealni.
    7.3.2017 23:54 ---- | skóre: 33 | blog:
    Rozbalit Rozbalit vše Re: Nové OctaForge cíle, OctaSTD coroutines a další změny
    Znám, má několik backendů, v mém případě je to pouze asm kód - ale pro C++ se taková knihovna nehodí, protože je nutné řešit exceptions a destruktory lokálních proměnných v korutině, s třeba tím ucontextem to moc nejde (resp. skoro jde, ale pokud korutina umře v polovině, tak se ty destruktory prostě nezavolají, není tam žádný ekvivalent ontop_fcontext)... nicméně ten asm mám stejně pro všechny podporované platformy, tak je to celkem jedno.

    Jinak jsem zrovna implementoval lepší stack allocator, takže by ta implementace v ostd měla být teď víceméně kompletní s relativně ideálním výkonem (jen momentálně nepodporuje rostoucí segmented stacky, ale to možná jindy...)
    8.3.2017 01:07 Radovan
    Rozbalit Rozbalit vše Re: Nové OctaForge cíle, OctaSTD coroutines a další změny
    Jak vypadá tvůj běžný den? Zbývá ti kromě práce a vývoje OctaForge čas i na něco jiného? Skoro by mohl být zajímavější článek o tom.
    14.3.2017 17:22 agagd
    Rozbalit Rozbalit vše Re: Nové OctaForge cíle, OctaSTD coroutines a další změny
    Pre Cesko je dobre ze taky clovek ako ty ostava zit v rodnej krajine. Dovolim si tvrdit ze patris medzi top 5% ludi v krajine.

    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.