Se o arquivo não for fechado, o sistema operacional o fechará?

2

Se um arquivo está sendo aberto por um processo e não está sendo fechado por nenhum dos processos, o sistema operacional fechará automaticamente esse arquivo aberto?

    
por user47240 16.09.2013 / 12:49

1 resposta

8

O sistema operacional não interfere no estado aberto / fechado dos descritores de arquivos enquanto um executável está sendo executado. No entanto, uma vez que um processo termine (seja de forma graciosa ou desagradável), se houver outros descritores de arquivos abertos, eles serão destruídos juntamente com a imagem do processo.

Como regra geral, no entanto, você deve sempre explicitamente fechá-las. Uma grande vantagem é que isso torna óbvio que os arquivos podem ser fechados, portanto, ao refatorar / alterar o código, você tem uma compreensão de onde eles podem ser fechados em vez de deixá-lo para o sistema operacional para fazê-lo após a finalização. / p>     

por 16.09.2013 / 12:58

Tags