Mode:
Duration:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
package main
import "fmt"
type MessageQueue struct {
messages chan string
}
func NewQueue() MessageQueue {
return MessageQueue{
messages: make(chan string, 3),
}
}
func producer(queue MessageQueue) {
queue.messages <- "Order Created"
queue.messages <- "Payment Processed"
queue.messages <- "Email Sent"
}
func consumer(queue MessageQueue) {
for i := 0; i < 3; i++ {
message := <-queue.messages
fmt.Println("Consumed:", message)
}
}
func main() {
queue := NewQueue()
producer(queue)
consumer(queue)
}Coding works best on desktop or with an external keyboard.