Общие сведения об очереди диспетчера

Думаю, мне нужна помощь в понимании Dispatcher Queue .

Когда поступает новая работа, она добавляется в начало очереди диспетчера, а когда диспетчер хочет обработать рабочий элемент, она удаляется с самого начала.

В более общем смысле :Если есть работа, она сохраняется в очереди в порядке FIFO и обрабатывается до тех пор, пока не останется никакой работы.

Документация MSDN здесь относится к loopиframe:

The Dispatcher processes the work item queue in a loop. The loop is referred to as a frame.

Но где петля в этом контексте? Для меня цикл — это что-то, что повторяется, и когда он достигает конца, он начинается снова.

И что такое концепция frame? Согласно документации MSDN, фрейм представляет собой набор рабочих элементов внутри очереди? Если это так, как следует использовать статический метод Disptatcher.PushFrame()?

И самый интересный вопрос заключается в том, есть ли способ получить текущее состояние очереди, особенно количество элементов в очереди.

Сохраняется ли это, если метод, который был вызван до (и поэтому помещен в очередь Dispatcher ), выполняется, что он затем немедленно удаляется из очереди, или он сохраняется внутри в течение другого периода времени?

Я знаю, так много вопросов:-)

17
задан Peter Ritchie 10 July 2012 в 18:19
поделиться