C#: запуск события при добавлении объекта в очередь
Я только что написал о том, что visual-c# я называю TriggeredQueue. Это queue вдохновило Марка Гравелла delegates на ответ.
Вы можете найти queue мое сообщение здесь: http://joesauve.com/triggeredqueuet
И суть c#-language здесь: http://gist.github.com/jsauve/b2e8496172fdabd370c4
Он состоит из четырех c# событий:
- WillEnqueue
- WillDequeue
- DidEnqueue
- DidDequeue
Вы можете подключиться .cs-file к любому из них следующим delegates образом:
YourQueue.WillEnqueue += (sender, e) => {
// kick off some process
};
YourQueue.DidEnqueue += (sender, e) => {
// kick off some process
// e.Item provides access to the enqueued item, if you like
};
YourQueue.WillDequeue += (sender, e) => {
// kick off some process
};
YourQueue.DidDequeue += (sender, e) => {
// kick off some process
// e.Item provides access to the dequeued item, if you like
};
Один изящный трюк csharp заключается в том, что вы c#-language можете использовать метод delegate DidDequeue для запуска некоторого c-sharp процесса, чтобы убедиться, что delegate очередь заполнена, сделав c#-language веб-запрос или загрузив некоторые queue данные из файловой системы c#.net и т. д. Я использую этот delegate класс в мобильных приложениях csharp Xamarin для убедитесь, что queue данные и изображения предварительно c#-language кэшированы, чтобы обеспечить .cs-file удобство взаимодействия с c#.net пользователем, вместо загрузки delegates изображений ПОСЛЕ их прокрутки delegate на экране (как вы могли бы visual-c# видеть в Facebook и бесчисленном func-delegate множестве других приложений).
c#
events
delegates
queue
C#: запуск события при добавлении объекта в очередь
Мы используем файлы cookies для улучшения работы сайта. Оставаясь на нашем сайте, вы соглашаетесь с условиями использования файлов cookies. Чтобы ознакомиться с нашими Положениями о конфиденциальности и об использовании файлов cookie, нажмите здесь.