(data interface{})
| 84 | } |
| 85 | |
| 86 | func (q *Queue) push(data interface{}) { |
| 87 | n := q.node_pool.Get() |
| 88 | n.data = data |
| 89 | n.next = nil |
| 90 | if q.end == nil { |
| 91 | q.head = n |
| 92 | q.end = n |
| 93 | } else { |
| 94 | q.end.next = n |
| 95 | q.end = n |
| 96 | } |
| 97 | q.c++ |
| 98 | return |
| 99 | } |
| 100 | |
| 101 | func (q *Queue) pop() (interface{}, bool) { |
| 102 | if q.head == nil { |