我想在文件列表上運行我的程序。但少數文件比預期時間長得多。所以我想在超時時間後終止線程/進程,並在下一個文件上運行程序。有沒有簡單的方法來做到這一點?我將一次只運行一個線程。如何在特定的時間內運行Java程序?
編輯1:
對不起,我不能早先說清楚。這是for
循環代碼。
for (File file : files)
{
//Perform operations.
}
所以一個文件是可以包含很多方法的Java程序文件。如果方法數量少,我的分析工作正常。如果有很多說20種方法,它會繼續執行並分析它們幾個小時。所以在後一種情況下,我想完成該執行並轉到下一個java文件。
而且我沒有任何單線程約束。如果多線程工作,這對我仍然有好處。謝謝。
在處理任何一個文件時,是否有幾點可以檢查所花費的時間?例如,每次你讀了另外10000行或類似的東西? –
這是一個多線程程序嗎? – bstempi
只有單線程。我只需要在一段時間後停止執行,並殺死它正在使用的所有資源,然後移動到下一個文件。 – Junaid