hints laid out here पालन करने के लिए कोशिश कर रहा है, लेकिन वह यह कैसे संभाल करने का उल्लेख नहीं है जब अपने संग्रह, मान तो तरह करने की जरूरत है:,अन्य धागे से वस्तुओं को लौटाना?
private delegate TValue DequeueDelegate();
public virtual TValue Dequeue()
{
if (dispatcher.CheckAccess())
{
--count;
var pair = dict.First();
var queue = pair.Value;
var val = queue.Dequeue();
if (queue.Count == 0) dict.Remove(pair.Key);
OnCollectionChanged(new NotifyCollectionChangedEventArgs(NotifyCollectionChangedAction.Remove, val));
return val;
}
else
{
dispatcher.BeginInvoke(new DequeueDelegate(Dequeue));
}
}
यह स्पष्ट रूप से काम नहीं करेगा क्योंकि dispatcher.BeginInvoke
वापस नहीं करता है कुछ भी। मुझे क्या करना चाहिए?
वह ब्लॉग पोस्ट 4 साल पुराना है और उन्होंने अभी भी इसे ठीक नहीं किया है :( – mpen
+1 मुझे इस प्रश्न का उत्तर देखने में दिलचस्पी होगी क्योंकि मुझे अपनी खुद की एक परियोजना में कुछ ऐसा करने की ज़रूरत है। –