Castecny zapis do socketu

Jan Kasprzak kas na fi.muni.cz
Pátek Květen 2 21:19:04 CEST 2008


Martin `MJ' Mares wrote:
: Dobry podvecer vespolek,
: 
: > 	Nejsou. Zapomnel jsem napsat - kdyz dam O_NONBLOCK (nebo treba
: > alarm(2)) tak se provede castecny zapis. Ale nevedel jsem, ze by
: > !O_NONBLOCK implikovalo ze se vzdy delaji plne zapisy a ceka se na ne.
: > Mel jsem za to, ze pokud poll() nebo select() vrati pripravenost k zapisu,
: > tak to znamena, ze write() zapise aspon neco a pak skonci.
: 
: ona by to nemusela byt pravda uz proto, ze nikdo nezarucuje, ze misto
: v zapisovem bufferu nemuze zcistajasna zmizet -- napriklad proto, ze se
: kernel rozhodne kvuli dochazejici pameti buffery zmensit. Takze je urcite
: rozumne pouzivat v kombinaci s poll() pouze neblokujici zapis.

	Jo, jasne. Ale tohle neni ten pripad. To co pozoruju ja
je, ze by castecne write() situaci resilo. Ovsem k tomu dochazi
(pro me prekvapive) jen pri O_NONBLOCK nebo pri explicitnim preruseni
toho write() pomoci SIGALRM.

-Y.

-- 
| Jan "Yenya" Kasprzak  <kas at {fi.muni.cz - work | yenya.net - private}> |
| GPG: ID 1024/D3498839      Fingerprint 0D99A7FB206605D7 8B35FCDE05B18A5E |
| http://www.fi.muni.cz/~kas/    Journal: http://www.fi.muni.cz/~kas/blog/ |
>>  If you find yourself arguing with Alan Cox, you’re _probably_ wrong.  <<
>>     --James Morris in "How and Why You Should Become a Kernel Hacker"  <<



Další informace o konferenci Linux