使用C#,如果在功能C()
之前調用了功能A()
,我需要做一些額外的工作。如果在A()
和C()
之間調用任何其他函數,那麼我不想做那些額外的工作。任何想法都需要最少量的代碼重複?如何在C#中調用其他方法時自動重置布爾值?
我試圖避免將flag = false;
這樣的行添加到每個函數B1
.. BN
中。
這是一個非常簡單的例子:
bool flag = false;
void A()
{
flag = true;
}
void B1()
{
...
}
void B2()
{
...
}
void C()
{
if (flag)
{
//do something
}
}
上面的例子只是用一個簡單的例子,但我願意用比其他布爾東西。重要的是,我希望能夠設置和重置各種標誌,以便C()
知道如何行爲。
謝謝你的幫助。如果您需要澄清,我將編輯我的文章。
是否有多個線程正在呼叫A?即這是否需要線程安全? – womp 2010-04-12 23:05:25