官方给的方案是传递Context,
这种方法实在是不怎么样。
找了很久各种替代方案好像也没有多完美的。
请问哪位有更好的方案?
<a href="/user/focussoft" title="@focussoft">@focussoft</a> 用goroutineid放在一个map中,取出的时候用goroutineid取不行么。threadlocal的原理就是这样,就把线程id换成了goroutineid。而且我看测试,有人说测试了几百万次没有出现问题,不过毕竟几百万不是非常多。没有实际测试线上跑过,也无法确定是否真的可行
#5
更多评论
其实我觉得用go routine是无法实现threadlocal的,
因为都是go routine所以没有总的thread可以共享,
有些变通的方法也不太完善,这里感觉像是golang的鱼和熊掌之类的东西不可兼得.
#2