[so] so Digest, Vol 59, Issue 17

Razvan Deaconescu razvan.deaconescu at cs.pub.ro
Sun Mar 13 11:21:10 EET 2011


On 03/12/2011 10:28 PM, Pandia Gheorghe wrote:
> Este posibil să primim un exemplu oficial de cod în care să se
> evidențieze cazul limită când un file descriptor este invalid și se
> mai poate numi file descriptor și nu un simplu întreg ?
> 
> Nu am găsit pe net un exemplu concludent pentru această situație și
> eram curios cum ar arăta codul.

Salut!

După cum a spus și Adrian Scoică, un file descriptor este tot timpul un
întreg. Se poate numi file descriptor nevalid în cazul în care un întreg
dat este folosit ca file descriptor, ca în exemplul atașat. De aceea
există și valoarea EBADF pentru errno ("Bad file descriptor").

La fel poate fi considerată situația cu folosirea close pentru
închiderea descriptorului.

Exprimarea "un descriptor nevalid mai poate fi numit descriptor?" este
interpretabilă, similar cu a spune "mai poate fi numit un pointer
nevalid un pointer?" (adică un pointer ce pointează în "bălării").

Contează situația în care folosești "entitatea" în cauză. Dacă folosești
un întreg în apelul write și acela eșuează, poți considera acel întreg
un file descriptor nevalid.

Răzvan


More information about the so mailing list