jjzjj

computeY

全部标签

multithreading - 如何安排运行的非阻塞函数

我的问题是如何安排每隔N个时间间隔运行独立的非阻塞函数。我最初的方法是在select语句中使用gochannels以非阻塞方式接收值,并在每个函数中使用time.Sleep(N)来安排调用。在下面的代码片段中,这仅适用于第一次运行;然而,在第一次调用之后,它会不断重复调用computeY(),而不考虑time.Sleep()调用。packagemainimport("fmt""time")var(xstring=""ystring="")funccomputeY(cchanstring){time.Sleep(10*time.Second)fmt.Println("I'minY")y=