Příručka Linux From Scratch pro sestavení základního linuxového systému byla aktualizována v pravidelném půlročním termínu. Vydání 13.1 shrnuje přes 40 nových verzí balíčků a několik patchů. Navazující příručka Beyond Linux From Scratch s recepty pro sestavení dalších knihoven a aplikací zatím vydána nebyla, ačkoliv vývojová verze stále dostává aktualizace. Lze je číst online nebo stáhnout v HTML či PDF.
Národní bezpečnostní tým CSIRT.CZ koordinovaný sdružením CZ.NIC přichází se službou Strážci internetu, která má sjednotit způsob hlášení doménových jmen zneužívaných k páchání trestné činnosti. Službu mohou uživatelé využívat také prostřednictvím rozšíření do prohlížeče. Nový nástroj podporuje jak hlášení vyžadující autorizaci, tak anonymní reporting, u kterého však nebude možné zapojit takovou míru automatizace jako u
… více »Firefox pro iOS přichází s integrovaným blokováním reklam. Funkce je ve výchozím nastavení vypnutá a lze ji aktivovat v Settings > Browsing > Ad Blocker.
Společnost Hugging Face ve spolupráci se společností Pollen Robotics představila (𝕏) open-source robota Microduck. Předobjednat jej lze za 340 eur.
Open-source autonomní AI agent OpenClaw (Wikipedie) byl vydán ve verzi 2026.8.1 aneb 2.0. Přehled novinek v poznámkách k vydání.
Byla vydána první veřejná preview verze PrusaSliceru 3.0. Přesně 15 let po zveřejnění první verze Slic3ru, které připadlo na 1. září 2011. Jedná se o dosud největší upgrade PrusaSliceru: "Řídili jsme se tím, co skutečně potřebujete, a tak jsme například zcela zahodili stávající uživatelské rozhraní a vytvořili ho znovu od nuly. Přinášíme také nový systém projektů, kompletně přepracované profily navržené pro moderní tiskárny s větším
… více »Byl vydán Mozilla Firefox 155.0. Přehled novinek v poznámkách k vydání a poznámkách k vydání pro vývojáře. Vypíchnout lze Smart Window, zatím ale dostupné pouze pro uživatele v USA, Kanadě a Francii. Řešeny jsou rovněž bezpečnostní chyby. Nový Firefox 155 bude brzy k dispozici také na Flathubu a Snapcraftu.
Tima Cooka na pozici generálního ředitele společnosti Apple dnešním dnem nahradil John Ternus, který byl dosud odpovědný za hardware. Tim Cook vedl Apple od roku 2011, kdy funkci převzal od později zesnulého spoluzakladatele společnosti Stevea Jobse. Za 15 let v čele Applu více než zdvojnásobil tržní hodnotu firmy.
Organizátoři konference LinuxDays ukončil veřejné přihlašování přednášek. Teď je na vás, abyste vybrali nejlepší témata pro letošní ročník. Hlasovat můžete do pondělí 7. září, poté bude podle výsledků hlasování sestaven program pro letošní ročník.
Servo, engine webového prohlížeče napsaný v Rustu, byl vydán ve verzi 0.5.0. Novinky shrnuje přehled projektu za červenec. Došlo k dalšímu pokroku ve vykreslování webových stránek. Současným cílem projektu je vytvořit komponentu webového prohlížeče jako WebView pro použití v jiných aplikacích.
V mojom príklade memcache používa skutočne blokujúce sockety (nepoužíl som gevent.monkey.patch_socket).
Pojem non blocking io sa používa hlavne v súvislosti s node.js ale je to prakticky to isté, čo som ukázal v python kóde (to je ekvivalentné s kooperatívnym multitaskingom kde sa pri volaní i/o prepne úloha a obnoví sa znovu až keď budú buffery patrične naplnené). Rozdiel je len v tom, že v pythone sa to isté dá zapísať bez callbackov.
Cieľom blogu bolo ukázať, že to, čo je dnes akože novinka tu bolo dávno pred tým, len sa to volalo trochu inak.
Prepínanie úlohy pri I/O sa dá dosiahnuť rôznymi spôsobmi - systémové vlákna, nejaké pseudovlákna v interpretovanom jazyku, alebo eventmi riadený loop s callbackmi ako v node.js. Rozdiel je len v spôsobe zápisu (ktorý je v prípade node.js podstatne zložitejší).
Samozreme teraz nehovorím, že rýchlo prepíšme všetko do pythonu pretože tam oproti node.js nie sú knižnice na neblokujúce volania pripravené. Príkladom môže byť napr. memcache, ktorý by pri nahradení socketu neblokujúcimi socketmi spôsobil odpojenie od memcached servera. Súčasné riešenie ktoré som ukázal pracuje s memcache korektne tj. požiadavka, odpoveď, požiadavka, odpoveď na tom istom sockete. Ak by som povolil prerušenie dvojíc požiadavka - odpoveď dostal by som na tom istom sockete požiadavka, požiadavka ... chyba. Tu je potrebné teda použiť špeciálnu memcache knižnicu, ktorá obaľuje dvojice do synchronizačných primitív a aby to celé nefungovalo ako úzke hrdlo treba vytvoriť niekoľko spojení a používať connection poll.
Pojem non blocking io sa používa hlavne v súvislosti s node.jsTen pojem se používal v době, kdy o node.js ještě nikdo neslyšel.
Áno, akurát v poslednej dobe sa z toho stal taký buzzword. Ako som písal všetko tu už bolo dávno, neblokujúce IO sa riešili väčšinou vláknami a to že v nodejs funguje tak, že IO operácie okamžite vracajú undefined a vrtátená hodnota IO sa podstrčí callbacku je len obídenie obmedzení nodejs, žiadna zázračná technológia. To isté som ukázal v inom jazyku (konkrétne python, ale kľudne som mohol použiť čokoľvek iné, čo pozná vlákna) ale s jednoduchším a kratším kódom (vďaka tomu, že sa nemusia používať callbacky). Takže podčiarknuté a sčítané - node.js sa oplatí jedine vďaka knižniciam, ale samotný komfort pri písaní a čitateľnosť kódu tu netreba hľadať.
Áno, akurát v poslednej dobe sa z toho stal taký buzzword.Buzzwordy si nech pro personalistky a management.
Ako som písal všetko tu už bolo dávno, neblokujúce IO sa riešili väčšinou vláknamiVzhledem k tomu, že neblokující IO, tak jak je známý z POSIXových a podobných systémů, je v podstatě jedinou možností, jak se vláknům (či procesům) vyhnout, zní mi tato věta dost komicky. Jediné, co ti můžu doporučit je přestat se snažit o vysvětlení a něco si o tom přečíst. Třeba na anglickou wikipedii ta tvoje buzzwordová verze ještě nedošla. Já jsem srozuměn s tím, že za „neblokující“ se dá označit ledacos včetně toho vláknování, ale pod „neblokujícím IO“ si představuju neblokující vstupní a výstupní operace. A to jsou kupodivu IO operace, které neblokují proces (vlákno), které je spustilo. Alternativou k tomu je spuštění blokující operace v samostatném vlákně. Jenže to musí být skutečné vlákno operačního systému, jinak nelze vůbec samostatně ze strany OS zablokovat. Takže pokud se jedná o nějaká kooperativní falešná vlákna na úrovni bajtkódových instrukcí (tak jsem to ze zápisku pochopil), tak za tím bude mezivrstva, která používá právě neblokující IO operace.
V prípade pythonu je to skutočne kooperatívny multitasking a na asynchrónne operácie sa používa knižnica libev (v tomto konkrétnom prípade, neplatí všeobecne).
> [1, 2, 3, 10].sort() [1, 10, 2, 3]Tohle jinde nenajdeš
.
import vibe.d;
import memcache;
shared static this() {
auto memcache = new Memcache("127.0.0.1:11211");
memcache.set("msg_var", "vyrok_2013-07-12");
memcache.set("vyrok_2013-07-12", "vyrok pre dnesok");
auto settings = new HTTPServerSettings;
settings.bindAddresses = ["::1", "127.0.0.1"];
settings.port = 8080;
listenHTTP(settings, (HTTPServerRequest req, HTTPServerResponse res) {
auto msg_var = memcache.get("msg_var");
auto msg = memcache.get(msg_var);
res.writeBody(msg, "text/plain");
});
}
BTW. je to skoro 2x rychlejsi nez node.js
Tiskni
Sdílej: