小编use*_*387的帖子

从golang中的tcp连接读取

在像bytes_read,err:= conn.Read(tmp)这样的语句中,我希望读取尝试x秒,如果没有读取开始,我希望代码继续检查一些连接并再次循环并尝试读取.我可以使用select-case并生成两个goroutine,一个尝试读取,另一个尝试超时.但是在这里,如果超时发生,首先代码将继续,检查条件并再次生成例程以尝试从连接读取而前面的读取例程仍然存活.我希望以前的例程在发生超时时死掉.

关于我如何进行的任何建议?

architecture distributed network-programming go server

1
推荐指数
1
解决办法
6098
查看次数

#在c ++代码中代表什么?

以下代码片段中#s之前的含义是什么?我不是指定义之前的#或用于预处理程序指令的#.

// Quote a given token stream to turn it into a string.
#define DEV_QUOTED_HELPER(s) #s
#define DEV_QUOTED(s) DEV_QUOTED_HELPER(s)
Run Code Online (Sandbox Code Playgroud)

这个问题与"字符串化 - 它是如何工作的?"不同.因为有这个问题的人不知道"字符串化"一词.它与C中的"什么是'#'运算符不同?" 因为它也出现在C++代码中,在这种情况下甚至SO都无法在类似问题的列表中显示这个问题(它在SQL,python等中显示了其他可能的问题).

c c++ c-preprocessor

1
推荐指数
1
解决办法
142
查看次数