The notion of a queue as a waiting line of a service facility is familiar to most of us. Queues occur wherever an imbalance occurs between requests for a limited resource and the ability of a service facility to provide that resource. The size of the queue depends on the amount of the resource available and the demand for it by customers. You can think of queuing applications, that make a trade-off between the cost of providing more of a resource and the cost of allowing larger queues to form. In the following sections we look at some typical queue types and queue behavior. Furthermore we describe the interfaces of the classes resource and queue based on a standard queuing example.