Não, a menos que você os feche ou o processo que os possui morra.
É possível que o usuário que você está usando para executar os testes seja restrito por ulimits quanto ao número de arquivos que eles podem abrir.
Enquanto escrevo alguns testes de unidade, eu atinjo o limite superior para muitos arquivos abertos (Debian VM) - "falha ao abrir fluxo: muitos arquivos abertos"
Além de reiniciar, existe alguma maneira de limpar este bloco? (ou seja, esses arquivos abertos, mas não acessíveis, serão limpos com o tempo?)
Fyi - Eu gostaria de saber porque quero configurar um servidor de integração contínua para testes de unidade, e se uma reinicialização é a única maneira de resolver esse problema, preciso encontrar uma maneira diferente de abordar determinados testes de unidade.
Você tentou aumentar o máximo de arquivos abertos para o usuário no qual realizou os testes?
Para ver quantos arquivos abertos o usuário possui (soft e hard):
# ulimit -Hn
# ulimit -Sn
Também é normal que às vezes você precise aumentar os arquivos abertos máximos globais para o sistema. Então tente com isso e descubra se isso ajuda.
# sysctl -w fs.file-max=100000
Se você quiser alterar permanentemente os arquivos max abertos, você precisa editar o arquivo /etc/sysctl.conf
e adicionar / alterar a seguinte linha
fs.file-max = 100000
Tags unix filesystems