勵志

勵志人生知識庫

什麼是可重入

可重入(Reentrant)是指在多任務或異步環境下,一個函式過程執行緒可以被中斷或切換,並在稍後再次進入執行,而不會導致數據丟失或程式錯誤。

可重入的概念通常用於多任務或並發環境中,確保即使是在多個執行緒或進程同時訪問或修改數據時,也能保持數據的一致性和正確性。在編程中,可重入的函式或過程不會因為外部因素(如中斷、資源搶占)而破壞其內部狀態。可重入代碼通常具有以下特徵:

不使用或僅使用執行緒局部存儲(TLS)分配的存儲空間。

不依賴於作業系統或硬體的特定資源,如全局變數中斷向量表

傳遞給其的所有參數都是可預測的,並且其返回結果對於相同的輸入數據是一致的。

不調用不可重入的函式。

可重入代碼的一個典型例子是作業系統中的系統調用接口,它允許多個進程同時安全地訪問核心繫統服務。