当前位置: 首页 > news >正文

网站广告怎么赚钱上虞建设局网站

网站广告怎么赚钱,上虞建设局网站,网站网页制作及优化,没有公网ip建设网站在Go语言中#xff0c;select语句用于在多个通道操作中进行选择。select语句使得程序可以同时等待多个通道的操作#xff0c;并在其中任意一个通道就绪时执行相应的操作。以下是select语句的详细描述#xff1a; select { case -ch1:// 当ch1通道可读时执行的操作 case…在Go语言中select语句用于在多个通道操作中进行选择。select语句使得程序可以同时等待多个通道的操作并在其中任意一个通道就绪时执行相应的操作。以下是select语句的详细描述 select { case -ch1:// 当ch1通道可读时执行的操作 case data : -ch2:// 当ch2通道可读时执行的操作并将读取的值赋给data变量 case ch3 - value:// 当ch3通道可写时执行的操作并将value写入通道 default:// 如果没有任何通道操作就绪则执行default块中的操作 }select语句由多个case块组成每个case块表示一个通道操作。-操作符用于从通道中接收数据ch - value表示向通道写入数据。 当多个case中有一个或多个操作就绪时select语句会随机选择其中一个就绪的操作执行。如果多个操作同时就绪Go语言的运行时系统会随机选择一个执行。 如果没有任何case中的操作就绪并且存在default块则执行default块中的操作。default块是可选的。 如果没有任何case中的操作就绪并且没有default块则select语句将阻塞直到至少有一个case中的操作就绪。 select语句可以用于以下几种情况 接收操作 -ch等待ch通道可读并接收通道中的数据。 data : -ch等待ch通道可读并将读取的值赋给data变量。发送操作 ch - value等待ch通道可写并向通道中写入value值。超时处理 可以结合time.After和select语句实现超时操作。 select { case -ch:// ch通道可读时执行的操作 case -time.After(time.Second):// 超时处理操作 }select语句非常有用可以用于处理并发操作例如与多个通道进行交互、超时处理、任务取消等。通过select语句可以有效地管理并发操作的状态和控制流程。 当使用select语句时可以根据具体需求组织不同的通道操作。下面是一个示例代码详细解释了select语句的用法 package mainimport (fmttime )func main() {ch1 : make(chan int)ch2 : make(chan string)go func() {time.Sleep(2 * time.Second)ch1 - 10}()go func() {time.Sleep(3 * time.Second)ch2 - Hello}()select {case num : -ch1:fmt.Println(Received from ch1:, num)case str : -ch2:fmt.Println(Received from ch2:, str)case -time.After(4 * time.Second):fmt.Println(Timeout occurred!)} }在上述示例中我们创建了两个通道ch1和ch2并使用匿名函数开启了两个goroutine分别在2秒和3秒后向通道发送数据。 select语句中的三个case块表示不同的通道操作 第一个case块num : -ch1表示等待ch1通道可读并将读取的值赋给num变量。 第二个case块str : -ch2表示等待ch2通道可读并将读取的值赋给str变量。 第三个case块-time.After(4 * time.Second)结合time.After函数表示等待4秒钟如果超时则执行该case块。 根据发送数据的时间select语句会选择其中一个就绪的case块进行执行。在这个示例中ch1通道的数据将在2秒后就绪而ch2通道的数据将在3秒后就绪。 如果在4秒钟内没有任何通道操作就绪那么超时操作-time.After(4 * time.Second)将被执行并打印出Timeout occurred!。 运行示例代码输出结果可能为 Received from ch1: 10或 Received from ch2: Hello这取决于通道操作的就绪顺序如果两个通道都在4秒内就绪那么select语句会随机选择一个就绪的操作执行。 go func() {time.Sleep(2 * time.Second)ch1 - 10 }()这段代码创建了一个匿名函数并使用go关键字将其作为一个独立的goroutine启动。该匿名函数的主要作用是在2秒后向通道ch1发送整数值10 go func() { … }() 是一个 Go 语言中的 goroutine 用法。 go关键字表示将匿名函数作为一个goroutine启动使其在独立的并发执行环境中运行。 func() { … }匿名函数的定义没有函数名直接定义函数体。 time.Sleep(2 * time.Second)time.Sleep函数用于暂停当前goroutine的执行这里暂停2秒钟。 ch1 - 10将整数值10发送到通道ch1中。 因此这段代码的功能是在启动后的2秒钟内将整数值10发送到通道ch1中。通过将该匿名函数放入独立的goroutine中执行可以使其在后台独立运行而不会阻塞主goroutine的执行。 需要注意的是由于通道操作可能会阻塞如果没有对应的接收方来接收发送的值或者通道已满对于无缓冲通道发送操作将会阻塞。在这种情况下程序可能无法继续执行直到有接收方准备好接收数据或通道可用为止。
http://www.hkea.cn/news/14499894/

相关文章:

  • 昆明高端网站建设沙洋县住房和城乡建设局网站
  • 怎么兼职做网站wordpress arduino
  • 海纳企业网站建设模板织梦网站做瀑布流方便
  • 备案时的网站名称wordpress无法导入xml
  • 外贸网站建设专业定制wordpress抽奖插件
  • 超市网站建设app制作平台推荐
  • 做英文网站的心得成都工程建设信息网站
  • 做网站卖游戏装备ipv6可以做网站吗
  • window7用jsp做的网站要什么工具企业网站推广计划书
  • 网站可以做10000件事情吗济南建设厅网站
  • 建设分销网站广安建设机械网站
  • 中国最大的建材网站a5站长网网站交易
  • 怎么用esc服务器做网站国际最新局势最新消息
  • 慈溪市建设厅网站阳朔到桂林
  • 关于建立公司网站的申请河南做网站汉狮网络
  • 专业做房地产网站建设多用户商城系统哪个好
  • 网站建设网上消费算在年费漯河网站建设(千弘网络)
  • 网站建设设计公司排名php怎么做网站快
  • 地方门户网站的推广江苏省建设档案网站
  • 爱站网长尾关键词挖掘工具让做网站策划没经验怎么办
  • 如何做网站可以吗电脑网页加速器
  • 网站图片被盗连怎么办啊东莞网站建设培训班
  • 网站建设行业研究wordpress多语言插件
  • 有关网站建设的论文企业免费网站系统下载地址
  • php做网站需要的技术成都住建官网app
  • wordpress 获取当前路径seo要点
  • 找人做网站怎么知道归属人创意做网站公司
  • 如何造网站公司做网站所上传的产品图片
  • 做文献的ppt模板下载网站网站菜单设置
  • 做二手车放在哪个网站好深圳品牌策划设计方案