Partilhar via


Identificadores de arquivo

Quando um arquivo é aberto por um processo usando a função CreateFile, um identificador de arquivo é associado a ele até que o processo termine ou o identificador seja fechado usando a funçãoCloseHandle. O identificador de arquivo é usado para identificar o arquivo em muitas chamadas de função.

Cada identificador de arquivo e objeto de arquivo geralmente é exclusivo para cada processo que abre um arquivo — as únicas exceções a isso são quando um identificador de arquivo mantido por um processo é duplicado ou quando um processo filho herda os identificadores de arquivo do processo pai. Nessas situações, esses identificadores de arquivo são exclusivos, mas veem um único objeto de arquivo compartilhado. Consulte DuplicateHandle para obter mais informações sobre a duplicação de identificadores de arquivo mantidos por processos.

Observe que, embora os identificadores de arquivo sejam normalmente privados para um processo, os dados de arquivo para os quais os identificadores de arquivo apontam não são. Portanto, processos e threads que compartilham o mesmo arquivo devem sincronizar seu acesso. Para a maioria das operações em um arquivo, um processo identifica o arquivo por meio de seu pool privado de identificadores.