[Java] 使用執行緒 Thread ,在執行某個業務邏輯的同時,做其他事情,印出 Log
以下是匯出資料的過程中,每秒印出 “等待中” 的字樣,直到匯出成功後才停止。
public class DataExport {
private static boolean isExportSuccessful = false;
public static void main(String[] args) {
// 啟動資料匯出執行緒
Thread exportThread = new Thread(() -> {
try {
// 模擬匯出資料過程,假設需要 5 秒鐘
Thread.sleep(5000);
isExportSuccessful = true;
} catch (InterruptedException e) {
e.printStackTrace();
}
});
exportThread.start();
// 每秒鐘印出 "等待中" 的字樣,直到匯出完成
while (!isExportSuccessful) {
System.out.println("等待中...");
try {
Thread.sleep(1000); // 等待一秒鐘
} catch (InterruptedException e) {
e.printStackTrace();
}
}
// 匯出成功後印出完成訊息
System.out.println("資料匯出成功!");
}
}
參考資料
- ChatGPT