我有兩個方法A和B. A從內部調用B方法。 B方法無論文件是否有內容都返回true或false。下面是代碼:等方法返回true
public static void A()
{
var isValid = B();
// Wait until "isValid" comes true
var xx = "test";
}
public static bool B()
{
// This will check for a file content
// Say C://test.txt
// If the file has some content this method will return true else false
}
我想的方法等,不執行「VAR XX =‘測試’;」除非B方法返回true。你能幫我指出一下怎麼做嗎?
編輯:我不能使用,如果循環簡單即如果(isValid),因爲內容被檢查的文件是由一些其他線程寫的,所以我需要不斷檢查B方法從A.我可以'不要讓這段代碼「var xx =」test「;」除非B返回true並且返回false,否則代碼應該在那裏等待(在var isValid = B();),除非B返回true,即代碼應該連續檢查B狀態。
如果你在同一個線程上執行兩個方法,它將等到B()完成。你使用多線程嗎? –
作爲一個無關的評論,你的'B'方法確認所有的數據都在文件中,而不僅僅是一些?根據文件的生成方式,您可能需要確保在文件仍在寫入時不會將文件註冊爲包含內容。 – Chris