queue.go
func (q *Queue) Add(entry interface{}) {
	q.key.Lock()
	defer q.key.Unlock()
	if nil == q.underlyer {
		q.underlyer = NewLinkedList()
	}
	q.underlyer.AddBack(entry)
}
func (q *Queue) Add(entry interface{}) {
	q.key.Lock()
	defer q.key.Unlock()
	if nil == q.underlyer {
		q.underlyer = NewLinkedList()
	}
	q.underlyer.AddBack(entry)
}
// Add places an item at the back of the Queue.