0
我有一個名爲全局變量: string tweet;
通知多個背景工人屬性更改C#
我跑幾背景的工人,什麼也不做,但等待在tweet
變量的值的變化。然後運行一個調用的函數:ProcessTweet(object sender, MyCustomEventArgs args)
我的問題是什麼是從所有這些背景職工辦理屬性更改事件,後來處理基於鳴叫值並傳遞給ProcessTweet
功能的其他參數的結果的最佳方式。
我試圖看看INotifyPropertyChanged
,但我不知道如何處理來自每個後臺工作人員的OnValueChange
事件。它會一次運行相同的ProcessTweet
函數嗎,還是每個後臺工作者都會運行該函數的一個實例?
編輯:
private ITweet _LastTweet;
public ITweet LastTweet
{
get { return this._LastTweet; }
set
{
this._LastTweet = value;
}
}
仍然不知道如何處理屬性更改事件的最好辦法^
並在下面的代碼
private void bgworker_DoWork(object sender, DoWorkEventArgs e)
{
MyCustomClass myCustomClass = e.Argument as MyCustomClass;
//here I want to listen on the LastTweet Value Change event and handle it
}
List<BackgroundWorker> listOfBGWorkers = new List<BackgroundWorker>();
private BackgroundWorker CreateBackgroundWorker()
{
BackgroundWorker bgworker = new BackgroundWorker();
//add the DoWork etc..
bgworker.DoWork += new System.ComponentModel.DoWorkEventHandler(bgworker_DoWork);
return bgworker;
}
private void buttonStart_Click(object sender, EventArgs e)
{
for (int i = 0; i < 10; i++)
{
//Create the background workers
var bgworker = CreateBackgroundWorker();
listOfBGWorkers.Add(bgworker);
//get the MYCustomClass value;
var myCustomClass = SomeFunction();
bgworker.RunWorkerAsync(myCustomClass);
}
}
我們可以看到一些代碼嗎?它會幫助你弄清楚你想要做什麼。 – Baldrick
@Baldrick我添加了更多的代碼。謝謝參觀! – circler
您是否希望*所有*您的線程回覆*設置的任何*新推文? – Baldrick