腾讯云
开发者社区
文档
建议反馈
控制台
登录/注册
首页
学习
活动
专区
圈层
工具
MCP广场
文章/答案/技术大牛
搜索
搜索
关闭
发布
文章
问答
(9999+)
视频
沙龙
2
回答
goroutines
中
使用
select
语句
的
通道
通信
行为
、
、
这是"A Tour of Go"提供
的
版本
的
修改版本。package main x, y := 0, 1
select
fmt.Println("DISP", <-c) quit <- 0 fibonacci(c, quit) } 以下是上述代码
的
输出D
浏览 22
提问于2020-05-02
得票数 0
回答已采纳
1
回答
函数返回后,GO - Code停止执行。
、
因此,我试图在go
中
构建一个websocket服务器。我碰到了一个有趣
的
虫子,我一辈子都搞不懂它为什么会发生。func Join(ws *websocket.Conn) { dec//This gets called} 我尝试过在侦听
的
最后一行中
使
浏览 6
提问于2016-05-09
得票数 0
1
回答
如何在golang
中
测试并发性和锁定?
、
、
基本上,有多个客户端试图获得一个特定密钥
的
锁。在下面的示例
中
,我们
使用
了键"x“。 Q1:我如
浏览 3
提问于2013-10-04
得票数 9
回答已采纳
2
回答
是否有可靠
的
方法可以确保导通
通道
在读取时不会阻塞?
、
、
这是对
的
跟进。if len(myChannel) > 0 { elm := <- myChannel } OP称这是一个“可能
的
问题”,但这是一个明确
的
问题:另一个消费者可能从评估if条件和执行这两个
浏览 3
提问于2015-04-29
得票数 0
回答已采纳
1
回答
如何
使用
Golang实现与Java /AIO相同
的
反应堆机制
、
、
我在Golang网络上读过很多博客,但大多数博客都
使用
select
和
通道
来处理新接受
的
连接,然后直接读写数据。但是如何在Go
中
实现类似Java
的
NIO呢?
浏览 1
提问于2018-12-22
得票数 1
2
回答
通知所有
goroutines
、
、
、
我在Go
中
的
一个TCP服务器上工作。现在,我想通知所有正在与客户端对话
的
goroutines
断开它们
的
连接,丢弃它们已有的东西并停止。问题是:这是惯用
的
Go吗?如果我错了,我应该怎么做(通知所有的
goroutines
类似于.NET
中
的
ManualResetEvent )? 注意:我是一个Go新手,刚刚开始学习TCP Server,因为我以前在C#
中
写过。
浏览 5
提问于2013-03-13
得票数 4
回答已采纳
3
回答
go
中
通过
通道
传递
的
消息是否保证不阻塞?
、
、
、
具体而言,下列设想方案是相关
的
:两个线程
使用
共享
通道
进行
通信
。线程A只执行异步发送,线程B只执行异步接收。假设OS调度程序决定在“最坏
的
时刻”不确定时间中断线程A。线程B是否保证在一定数量
的
cpu周期内完成接收操作,或者线程A是否有可能将
通道
置于线程B需要等待操作系统恢复线程A
的
状态?多生产者: 几个线程A1,A2,A3 .
使用
共享
通道
与一个或多个其他线程
通信
。线程Ai只执行异步
浏览 9
提问于2011-07-17
得票数 9
回答已采纳
3
回答
select
with single case blocks,添加default: unblocks
在
使用
如下代码测试一些代码时:
select
{ println("here")}for { case <- ch: }如果代码块是必需
的</
浏览 0
提问于2016-08-24
得票数 12
回答已采纳
2
回答
Go <-chan开销
我已经尝试了解Go
中
的
通道
有一段时间。但有一件事让我感到疑惑。你打电话
的
时候到底发生了什么,
select
{ }它是否检查chan every for iteration是否有更新?在性能方面,它与普通
的
case i = int:或case atomic.LoadUint64() = uint64:相比如何?
浏览 1
提问于2015-10-29
得票数 1
2
回答
在同一个峡谷
中
创建
的
猩猩是否总是按照顺序执行?
、
if b==100 { } } 上面的代码创建了100个
goroutines
来将num插入到c
通道
,所以我只是想知道,这些
goroutines
会以随机顺序执行吗?在我
的
测试
中
,输出总是1到100。
浏览 0
提问于2015-03-15
得票数 3
回答已采纳
1
回答
如何防止不
使用
sync.WaitGroup
的
死锁?
、
、
WaitGroups // fmt.Println("result:", <-out)} 例子是goplay上
的
。
浏览 6
提问于2017-05-25
得票数 0
2
回答
select
语句
是否保证频道选择
的
顺序?
、
、
在之后,如果一个goroutine在两个
通道
上进行选择,它是否保证这些
通道
的
选择顺序与发送
的
顺序相同?我对发送方是单线程
的
情况特别感兴趣。例如,是否保证此代码总是产生相同
的
输出: "fmt")
select
{ fm
浏览 4
提问于2021-08-04
得票数 1
回答已采纳
1
回答
使用
goroutine运行同一程序
的
另一个实例?
、
、
使用
goroutines
运行同一个go程序
的
多个实例,比如运行go main(),这是可接受
的
做法吗?如果是这样,是否可以修改发送给goroutine (或os.Args[])
的
参数,使main()函数不会创建无限数量
的
goroutine?然后,
goroutines
应该能够通过
通道
相互
通信
。我知道
goroutines
共享相同
的
内存空间,但有不同
的
堆栈,所以这可能会导致一些竞争条件问
浏览 0
提问于2019-03-15
得票数 1
1
回答
Gogoutine调度算法
、
i := 0; i < 10; i++ { } for {//step 4}Go版本:go1.3 linux/amd64RecvReq一直在请求msgQueue revc,然后主要
的
goroutine一直在创建新
的
goroutine,但是等待<em
浏览 2
提问于2014-11-09
得票数 1
2
回答
GO - Goroutine和并发
、
、
、
、
背景: 线程采用抢占式调度,而C++光纤采用协同调度.
使用
P螺纹:当前执行路径可能在任何时候被中断或抢占--这意味着对于线程来说,数据完整性是一个大问题,因为一个线程可能会在更新数据块
的
过程
中
停止,从而使数据
的
完整性处于糟糕或不完整
的
状态在Win32
中
,光纤是一种用户管理
的
线程.一个光纤有它自己
的
堆栈和自己
的
指令指针等等,但是操作系统没有对光纤进行调度:您必须显式地调用SwitchToFiber。它们
的
行为<
浏览 0
提问于2017-01-31
得票数 5
回答已采纳
2
回答
如何在Java
中
实现Go
的
非缓冲
通道
?
、
、
Go提供了两个,用于在
goroutines
(线程)之间进行
通信
。在Java中将缓冲
通道
实现为有界缓冲区是的职责。 Go
的
非缓冲
通道
需要在另一个goroutine接收时发送一个goroutine。有人能向我解释如何在Java
中
实现这个功能吗?
浏览 3
提问于2017-04-24
得票数 0
回答已采纳
2
回答
Golang:
select
语句
在不应该退出时退出
、
、
、
这是我
的
代码:"fmt") ch3 := Remind("Sleep", 1000*1000*1000*24) // every 24th second
浏览 3
提问于2016-03-31
得票数 0
回答已采纳
2
回答
拉取0大小
的
golang更改
、
、
、
我
的
用例如下:我需要向由targetUrl表示
的
0...N订阅者发送POST请求。我想将goroutine
的
最大数量限制为100。notifySubscriber(buffer chan Subscription) { for {
select
subs = append(subs, Subscription{TargetUrl: "http://fizz.buzz&quo
浏览 0
提问于2018-01-24
得票数 0
2
回答
为什么在戈朗
的
频道需要一个常规程序?
我要在戈朗
的
频道上加快速度。根据其, import "fmt" c := make(chan
浏览 2
提问于2017-05-27
得票数 10
回答已采纳
1
回答
是否可以
使用
上下文和缓冲
通道
作为队列?我不确定这是不是线程安全
、
、
我需要创建一个队列,将数据传递给多个
使用
者。我可以
使用
缓冲
通道
和上下文来实现它吗?我不确定这是不是线程安全package main "context" "strconv") for i := 0; i < consumerCount; i++ { go runConsumer
浏览 2
提问于2021-12-22
得票数 1
点击加载更多
热门
标签
更多标签
云服务器
ICP备案
对象存储
即时通信 IM
云直播
活动推荐
运营活动
广告
关闭
领券