Společnost Espressif (ESP8266, ESP32, …) získala většinový podíl ve společnosti M5Stack, čímž posiluje ekosystém AIoT.
Byla vydána nová stabilní verze 3.5 svobodného multiplatformního softwaru pro editování a nahrávání zvukových souborů Audacity (Wikipedie). Přehled novinek také na YouTube. Nově lze využívat cloud (audio.com). Ke stažení je oficiální AppImage. Zatím starší verze Audacity lze instalovat také z Flathubu a Snapcraftu.
50 let operačního systému CP/M, článek na webu Computer History Museum věnovaný operačnímu systému CP/M. Gary Kildall z Digital Research jej vytvořil v roce 1974.
Byl zveřejněn program a spuštěna registrace na letošní konferenci Prague PostgreSQL Developer Day, která se koná 4. a 5. června. Na programu jsou 4 workshopy a 8 přednášek na různá témata o PostgreSQL, od konfigurace a zálohování po využití pro AI a vector search. Stejně jako v předchozích letech se konference koná v prostorách FIT ČVUT v Praze.
Po 48 letech Zilog končí s výrobou 8bitového mikroprocesoru Zilog Z80 (Z84C00 Z80). Mikroprocesor byl uveden na trh v červenci 1976. Poslední objednávky jsou přijímány do 14. června [pdf].
Ještě letos vyjde Kingdom Come: Deliverance II (YouTube), pokračování počítačové hry Kingdom Come: Deliverance (Wikipedie, ProtonDB Gold).
Thunderbird 128, příští major verze naplánovaná na červenec, přijde s nativní podporou Exchange napsanou v Rustu.
Byly vyhlášeny výsledky letošní volby vedoucího projektu Debian (DPL, Wikipedie). Novým vedoucím je Andreas Tille.
Po osmi měsících vývoje byla vydána nová verze 0.12.0 programovacího jazyka Zig (GitHub, Wikipedie). Přispělo 268 vývojářů. Přehled novinek v poznámkách k vydání.
Poslední měsíc byl plný zajímavých akcí, o kterých Vám bastlíři z projektu MacGyver mohou povědět, protože se na ně sami vydali. Kde všude byli, ptáte se? Objevili se na Installfestu, Arduino Day, Hackaday Europe a tajném srazu bastlířů z Twitteru. A z každé akce pro vás mají zajímavé poznatky.
… více »Zdravim,
Mel bych dotaz na zasilani signalu v linuxu. Jde mi o toto. Pokud napriklad vlakno hojne vyuziva IO operace tak se mu jaksi tezko da poslat signal.
Napriklad kdyz date do smycky cout << "Neco << endl.
Jde nejak definovat aby signal byl dorucenej v kazdym pripade ?
Dekuji za odpoved.
kill
.
Asi by bylo lepší podroběji popsat situaci, ukázat kód...
read()
nebo write()
, které mezi ně zrovna patří.
Tomu nerozumím, v manu se např. u read píše:
If a read() is interrupted by a signal before it reads any data, it shall return -1 with errno set to [EINTR].
read()
zrovna patří mezi syscally, které se chovají tak, jak Messa tvrdí. Pouze jsem upozorňoval, že se tak nechovají všechny syscally, jak by se z jeho příspěvku mohlo zdát.
Aha, já to pochopil opačně, omlouvám se.
Hmm a neni jeste nejak zkomplikovano tim, ze zarizeni v unixu jsou rozdelana na rychla a pomala? Na neco takoveho si matne zvpominam z prednasek z Unixu, ale uz si nedokazu presne vzpomenout cim se ta zarizeni lisi.
pthread_sigmask()
. Pokud např. nastavíte signál jako blokovaný všem threadům kromě jednoho, pak ho zpracuje právě ten jeden. Druhou možností je použít pthread_kill()
a poslat signál přímo konkrétnímu threadu.
No ukazka kodu je jednoducha.
Napriklad:
#include <iostream>
using namespace std;
int main()
{
while(true)
{
coud << "Hello World" << endl;
}
}
a zkuste si to zabit pres ctr+c trva to pekne dlouho.
O co mi jde. Pisu managera kterej bude obsluhovat vlakna a nastavovat jim urcitej cas, ktery budou mit na vyrizeni sitovyho pozadavku.
Udelal sem to takto. V hlavni smycce managera ma sleep(1) a tam projde kontainer tech vlaken ktery obsluhuje. Pokud vyprsel cas posle mu signal. Ja ho v tom vlakne muzu odchytnout obslouzit zavrit socket atp.
Jenze pokud tech vlaken bude v manageru vic a budou se chovat tak jako viz nahore tak ten signal vubec neposlu respektive se neobslouzi.
Nejaky napad jak to udelat lip ?
Diky
Hmm nejsem si jistej jestli jsou signaly to pravy reseni pro komunikaci mezi vlakny. Zkus se podivat na knihovnu apr (apache portable library). Ta to sice resi trochu slozite, ale zase to funguje i na woknach.
Kouknete se na tohle. apr knihovna to vlastne resi dost neumele. Komunikaci mezi vlakny je mozne vyresit bez signalu, bez syscallu, bez zamku. Cele je to pak mnohem rychlejsi. http://www.gamedev.net/community/forums/topic.asp?topic_id=511635
Implementace na linuxu je bohuzel dost pracna.
a zkuste si to zabit pres ctr+c trva to pekne dlouho.
U mne bez pozorovatelného zpoždění. Ale i v případě, že to máte pomalé, problém vůbec nemusí být (a téměř jistě není) v tom, že by thread nedostával signály.
a zkuste si to zabit pres ctr+c trva to pekne dlouho.Tu je ale problém v tom, že dlho beží ten výpis na obrazovku. Skús to presmerovať do súboru - koľko potrvá od stlačenia Ctrl+C po skončenie procesu. Ešte markantnejšie to je keď to pustíš na stroji, na ktorý si prihlásený po sieti.
Tiskni Sdílej: