2010-05-22 69 views
2

是否有辦法阻止其他潛艇在單獨的潛艇中運行?在Sub中停止運行其他潛艇

例如說你在子 CreateNumber()

和潛艇都安裝類似

CreateNumber()
AddNumber()
DeleteNumber()

是否有辦法在CreateNumber()中並調用一個函數來阻止AddNumber在creaetNumber()完成後運行?我只想讓我的節目坐在那裏等待事件的發生。

+0

除非您運行多個線程,否則一次只能運行一段代碼。如果您正在運行多個線程,請更新您的問題以包含該信息。 – 2010-05-22 19:08:27

回答

1

只是這樣做:如果你不使用線程

CreateNumber() 
WaitForSomeEventToHappen() 
AddNumber() 
DeleteNumber() 

,那麼這些潛艇將被簡單地稱爲順序,所以你沒有做任何事情「聰明」。

如果您希望CreateNumber能夠控制是否將執行AddNumber(),那麼您可以將其設置爲函數並返回結果 - 例如,

Public Function CreateNumber() As Boolean 
    ...create the number... 

    if (numberCreatedOk) 
     return(True); 

    return(False); 
End Function 

然後調用它像這樣:

if (CreateNumber()) then 
    AddNumber() 
    DeleteNumber() 
end if 

這樣,你只能調用其餘的替補,如果CreateNumber()返回真。

+0

哦,我明白了,非常感謝。 – Bigfatty 2010-05-22 19:16:24