码迷,mamicode.com
首页 > 其他好文 > 详细

小小心得:go的匹配多行字符串、channel的range用法和close的用法

时间:2019-10-14 00:57:17      阅读:84      评论:0      收藏:0      [点我收藏+]

标签:expec   初始   channel   ted   ann   通过   读取数据   字符串   cte   

  • go正则匹配多行字符串的一个正则式

(?s)\d+\)\s.*?\n\s*\n
`
1) 初始化页面元素未达到要求
  - Expected false
  - Failed: No 

2) 初始化页面元
  - Failed: No element found

3) 初始页e多行本框好
  - Expected fa
  - Failed: No element found using locator: By(

`
  • channel的range使用注意事项

cha := make(chan int,10)
for data:=range cha{
    // 只有close的时候range才不会继续循环获取管道数据
    fmt.Println(data)
}

这段代码会报错,因为cha没有输入数据,就读取数据造成死锁。修改代码如下:

cha := make(chan int,10)
close(cha)
for data:=range cha{
    // 只有close的时候range才不会继续循环获取管道数据
    fmt.Println(data)
}

当channel关闭的时候,没有数据就不再进行读取管道数据

  • channel的close()用法:因为关闭之后,<- channel有输出结果的,所以可以通过这个特性制作协程哨兵

小小心得:go的匹配多行字符串、channel的range用法和close的用法

标签:expec   初始   channel   ted   ann   通过   读取数据   字符串   cte   

原文地址:https://www.cnblogs.com/MyUniverse/p/11669095.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!