Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/google-apps-script/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Go 如何使用上下文。在函数调用链中取消上下文_Go - Fatal编程技术网

Go 如何使用上下文。在函数调用链中取消上下文

Go 如何使用上下文。在函数调用链中取消上下文,go,Go,假设我有以下函数: func A(ctx context.Context) { // A takes some time to process } func B(ctx context.Context) { // B takes some time to process } func C(ctx context.Context) { // C takes some time to process } 注意:每个函数调用都需要一些时间来处理 注:B应在函数A内调用,C

假设我有以下函数:

func A(ctx context.Context) {
    // A takes some time to process
}

func B(ctx context.Context) {
    // B takes some time to process
}

func C(ctx context.Context) {
    // C takes some time to process
}
注意:每个函数调用都需要一些时间来处理

注:B应在函数A内调用,C应在函数B内调用


只需要为这种特定情况提供一个示例。

您只需传递与参数相同的上下文,但每当您等待来自channel\remote server\anything的结果时,您就可以使用select语句来等待参数,就像它们不需要花时间处理一样。你有什么特别的问题吗?你试过什么?嗨,我搜索过了,但我找不到一个例子,当函数调用链发生时,这种情况。这个链也没有任何区别。再说一次,你有什么特别的问题,你尝试过什么?我只是想写一个取消的程序,这样我可以随时取消函数调用的整个过程。我只需要一个例子来说明这种情况。