美文网首页
chan转换

chan转换

作者: bocsoft | 来源:发表于2018-12-07 15:40 被阅读0次

package main

import "fmt"

func main() {
    var ok bool
    ch := make(chan int, 1)
    _, ok = interface{}(ch).(<-chan int)//先强转空接口,再做类型断言
    fmt.Println("chan int => <- chan int:", ok) //chan int => <- chan int: false
    _, ok = interface{}(ch).(chan<- int)
    fmt.Println("chan int => chan<- int:", ok)//chan int => chan<- int: false

    sch := make(chan<- int, 1)
    _, ok = interface{}(sch).(chan int)
    fmt.Println("chan<- int => chan int:", ok) //chan<- int => chan int: false

    rch := make(<-chan int, 1)
    _, ok = interface{}(rch).(chan int)
    fmt.Println("<-chan int=> chan int:", ok) //<-chan int=> chan int: false
}



相关文章

  • chan转换

  • 12.2-《超越感觉》-反应错误之转换话题

    12.2-Errors of Reaction-Change The Subject 反应错误之转换话题 Chan...

  • Go建议(翻译)

    Go-advices 代码 go fmt 你的代码 多个if语句可以转换成switch 使用 chan struc...

  • Go 基础 4:channel拔高 和 select

    先说这个buffered chan就是在创建chan的时候加上个chan buffer的大小 基本的chan在se...

  • Chan

    梦已入睡 渡人自渡 渡一生莲花 …… 十里桃花 待嫁的年华 悠悠风来 埋在三生石下 …… 倘若我心中的如来 你眼中...

  • chan

    1.主协程只负责调用子协程,但是不会被子协程阻塞 2.在主协程中,无缓冲的chan需要输入输出成对出现,否则会死锁...

  • chan

    chan 不带缓存 make(chan 数据类型) 进和出都会阻塞. 读和写同时存在,才会同时退出阻塞。如果只...

  • chan

    你不能每天这么chan我的 我心里咯噔了一下 原来我已经这么缠你了吗 你不喜欢我缠了啊 每次看着好吃的我又吃不到 ...

  • 书画禅---尹同君书法作品之一(中英双语)

    书画禅 Shu Hua Chan Chan Meditation with calligraphy and pai...

  • 2018-05-18

    var nilCh chan intfmt.Println(nilCh)ch := make(chan error...

网友评论

      本文标题:chan转换

      本文链接:https://www.haomeiwen.com/subject/bdwthqtx.html