Skip to content

Instantly share code, notes, and snippets.

@aburan28
Created February 19, 2024 19:39
Show Gist options
  • Save aburan28/d9b13cd3e4b048ce8e53c9f01c453f26 to your computer and use it in GitHub Desktop.
Save aburan28/d9b13cd3e4b048ce8e53c9f01c453f26 to your computer and use it in GitHub Desktop.
package main
import (
"fmt"
"github.com/fxtlabs/primes"
)
func Generate(ch chan<- int) {
for i := 20000; ; i++ {
ch <- i
}
}
func checkPrime(n int, pr chan int) {
if primes.IsPrime(n) {
pr <- n
}
}
func main() {
// nums := make(chan int)
ch := make(chan int)
pr := make(chan int)
go Generate(ch)
for {
select {
case num := <-ch:
go checkPrime(num, pr)
case prime := <-pr:
fmt.Println("prime", prime)
}
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment