Create a Go program to implement a worker pool pattern using goroutines and channels.
MediumProblem Statement
Create a Go program to implement a worker pool pattern using goroutines and channels.
Sample Input
A set of tasks (e.g., [1, 2, 3, 4, 5]).
Sample Output
Worker 3 processing task 1 Worker 3 processing task 3 Worker 3 processing task 4 Worker 3 processing task 5 Result: 2 Result: 6 Result: 8 Result: 10 Worker 1 processing task 2 Result: 4
Limits
Time: 2s · Memory: 256 MB
Code Editor
00:00
package main
import "fmt"
func worker(id int, tasks <-chan int, results chan<- int) {
// Implement worker functionality
}
func main() {
// Set up workers and task processing
}
Input
A set of tasks (e.g., [1, 2, 3, 4, 5]).
Expected Output
Worker 3 processing task 1 Worker 3 processing task 3 Worker 3 processing task 4 Worker 3 processing task 5 Result: 2 Result: 6 Result: 8 Result: 10 Worker 1 processing task 2 Result: 4