1
$\begingroup$

Let suppose a simple (FIFO) queue, where elements enter at a side and exit at the other side.

I know the classical use of queues in everyday life and computer networking. I would like to know more specific uses, for instance in distributed applications.

Are there client-server applications where we need to investigate elements of the queue which are not at its extreme sides ? (that is, elements which are not the first and the last of the queue).

Thank you.

$\endgroup$
4
  • $\begingroup$ I'm not familiar with what "ponctually" means -- can you edit to elaborate? (I suspect a typo, but I can't guess what was intended.) I would assume the answer is "yes"; why do you ask? How will you use the answer? $\endgroup$
    – D.W.
    Commented Apr 1, 2015 at 5:23
  • $\begingroup$ @D.W. Thanks very much for your interest. In fact the term "ponctually" can be removed. I'm going to update the post. I will use the answer for an overview (I have to present the uses of queues in all its forms). $\endgroup$
    – user7060
    Commented Apr 2, 2015 at 8:09
  • $\begingroup$ The second paragraph is asking for applications of FIFOs. However, the third paragraph is asking for applications of non-FIFOs. So, what is your ultimate purpose? Do you want both? $\endgroup$
    – hengxin
    Commented Apr 2, 2015 at 13:09
  • $\begingroup$ This seems far too open-ended. There are almost as many uses of queues as there are algorithms. $\endgroup$ Commented Apr 2, 2015 at 16:41

1 Answer 1

1
$\begingroup$

Here is an application of FIFOs in multiprocessor computers. A multiprocessor computer can be regarded as a distributed system.

To make a multiprocessor computer that correctly executes multiprocess programs, two requirements are given by Leslie Lamport [1]. The second one reads,

Requirement R2: Memory requests from all processors issued to an individual memory module are serviced from a single FIFO queue. Issuing a memory request consists of entering the request on this queue.


For what it concerns applications of non-FIFO queues, I am confused about your requirement: Why do you use a queue if you don't need its features?

Anyway, is the priority queue an application in which we need to investigate elements of the queue which are not at its extreme sides?


[1] How to Make a Multiprocessor Computer That Correctly Executes Multiprocess Programs. By Leslie Lamport. IEEE Transactions on Computers, 1979.

$\endgroup$
1
  • $\begingroup$ Thanks for your answer. Maybe an example of application where we need to investigate elements of a FIFO queue is "the observation of a switch packets" ? $\endgroup$
    – user7060
    Commented Apr 4, 2015 at 13:18

Not the answer you're looking for? Browse other questions tagged or ask your own question.