Iconify je seznam a galerie kolekcí vektorových open-source ikon, ke stažení je přes 275000 ikon z více jak dvou set sad. Tento rovněž open-source projekt dává vývojářům k dispozici i API pro snadnou integraci svobodných ikon do jejich projektů.
Dle plánu certifikační autorita Let's Encrypt nově vydává také certifikáty s šestidenní platností (160 hodin) s možností vystavit je na IP adresu.
V programovacím jazyce Go naprogramovaná webová aplikace pro spolupráci na zdrojových kódech pomocí gitu Forgejo byla vydána ve verzi 14.0 (Mastodon). Forgejo je fork Gitei.
Just the Browser je projekt, 'který vám pomůže v internetovém prohlížeči deaktivovat funkce umělé inteligence, telemetrii, sponzorovaný obsah, integraci produktů a další nepříjemnosti' (repozitář na GitHubu). Využívá k tomu skrytá nastavení ve webových prohlížečích, určená původně pro firmy a organizace ('enterprise policies'). Pod linuxem je skriptem pro automatickou úpravu nastavení prozatím podporován pouze prohlížeč Firefox.
Svobodný multiplatformní herní engine Bevy napsaný v Rustu byl vydán ve verzi 0.18. Díky 174 přispěvatelům.
Miliardy korun na digitalizaci služeb státu nestačily. Stát do ní v letech 2020 až 2024 vložil víc než 50 miliard korun, ale původní cíl se nepodařilo splnit. Od loňského února měly být služby státu plně digitalizované a občané měli mít právo komunikovat se státem digitálně. Do tohoto data se povedlo plně digitalizovat 18 procent agendových služeb státu. Dnes to uvedl Nejvyšší kontrolní úřad (NKÚ) v souhrnné zprávě o stavu digitalizace v Česku. Zpráva vychází z výsledků víc než 50 kontrol, které NKÚ v posledních pěti letech v tomto oboru uskutečnil.
Nadace Wikimedia, která je provozovatelem internetové encyklopedie Wikipedia, oznámila u příležitosti 25. výročí vzniku encyklopedie nové licenční dohody s firmami vyvíjejícími umělou inteligenci (AI). Mezi partnery encyklopedie tak nově patří Microsoft, Amazon a Meta Platforms, ale také start-up Perplexity a francouzská společnost Mistral AI. Wikimedia má podobnou dohodu od roku 2022 také se společností Google ze skupiny
… více »D7VK byl vydán ve verzi 1.2. Jedná se o fork DXVK implementující překlad volání Direct3D 5, 6 a 7 na Vulkan. DXVK zvládá Direct3D 8, 9, 10 a 11.
Byla vydána verze 12.0.0 knihovny libvirt (Wikipedie) zastřešující různé virtualizační technologie a vytvářející jednotné rozhraní pro správu virtuálních strojů. Současně byl ve verzi 12.0.0 vydán související modul pro Python libvirt-python. Přehled novinek v poznámkách k vydání.
CreepyLink.com je nový zkracovač URL adres, 'díky kterému budou vaše odkazy vypadat tak podezřele, jak je to jen možné'. Například odkaz na abclinuxu.cz tento zkracovač převádí do podoby 'https://netflix.web-safe.link/logger_8oIlgs_free_money.php'. Dle prohlášení autora je CreepyLink alternativou ke zkracovači ShadyURL (repozitář na githubu), který dnes již bohužel není v provozu.
poll(2) s timeoutem a pipe(2). (Vytvořím rouru, pollem v jednom procesu/vlákně čekám na příchozí data a ve druhém vlákně nebo třeba handleru signálu pro ukončení pošlu data.) Takové řešení se hodí, pokud už rourou (nebo soketem apod.) posíláme nějaký příkaz pro ukončení.
Zkusím to nějak blíž nastudovat. Ta varianta s timery by mohla být schůdná.
ne, že bych s tím souhlasil, pthread bude rozhodně efektivnější, na druhé straně chyba v pouštěné funkci shodí celý proces, zatímco v případě fork() jenom ten child.Efektivnejsi? Mozna ano, ale uvedom si, ze novy proces se udela jen na zacatku. Pak se stejne ceka. A v jakych poctech se vlastne pohybujeme? Myslim, ze v takovych, kde vytvoreni child procesu opravdu nebude problem s rezii.
Efektivnejsi? Mozna ano, ale uvedom si, ze novy proces se udela jen na zacatku. Pak se stejne ceka. A v jakych poctech se vlastne pohybujeme?Efektivnější neznamená jen vytvoření procesu, ale celou dobu údržbu těch procesů (vlastní tabulka virtuální paměti - i když z velké části samotná paměť asi sdílená, taky, kdo ty child procesy bude sestřelovat). Pokud se pohybujeme v rámci desítek funkcí - pak je fork ok, stovky, možná nízké tisíce - threads jsou ok, u víc by to chtělo ten threadpool. Počítám, že tady půjde o jednotky až desítky, proto jsem psal, zda to stojí za ty komplikace (respektive komplikace je to, že pro čisté C takové knihovny moc nejsou, jinak by to bylo naopak jednodušší).
Efektivnější neznamená jen vytvoření procesu, ale celou dobu údržbu těch procesů (vlastní tabulka virtuální paměti - i když z velké části samotná paměť asi sdílená, taky, kdo ty child procesy bude sestřelovat).Proc bude vetsinu dobu sveho zivota pouze spinkat, nebal bych se tedy teto rezie.
Pokud se pohybujeme v rámci desítek funkcí - pak je fork ok, stovky, možná nízké tisíce - threads jsou ok, u víc by to chtělo ten threadpool.Jiste, ThreadPool a napsat to treba v jave by bylo nejlepsi, ale to tazatel nechtel. Pro jeho ucel naprosto postacuje model s forkem a signal. A garantuji vam, ze pro tento ucel nejsou i radove stovky na prumernem zeleze problem.
Počítám, že tady půjde o jednotky až desítky, proto jsem psal, zda to stojí za ty komplikace (respektive komplikace je to, že pro čisté C takové knihovny moc nejsou, jinak by to bylo naopak jednodušší).+1 Take mi prijde, ze pro zacatecnika jsou veci okolo forku a signalu daleko pochopitelnejsi nez prace s pthreads, ktere v C maji vylozene hnusne api.
Mmain(): sending cancellation request Joining thread 0 main(): thread wasn't canceled (shouldn't happen!) main(): sending cancellation request Joining thread 1 main(): thread wasn't canceled (shouldn't happen!) main(): sending cancellation request Joining thread 2 main(): thread was canceled main(): sending cancellation request Joining thread 3 main(): thread wasn't canceled (shouldn't happen!) main(): sending cancellation request Joining thread 4 main(): thread wasn't canceled (shouldn't happen!) main(): sending cancellation request Joining thread 5 _https://pastebin.com/BmECNELD K čemu je tam nutný prosím ten fakeMutex? PS: Zkusil jsem i ně které zde zzmíněné další varianty, ale přišlo mi to až zbytečně složité.
pthread_cond_broadcast(&fakeCond); a pak pro jistotu ještě počkat na dokončení vláken přes join().
Tiskni
Sdílej: