如何在 Go 中有非共享的状态变量?

我知道,现在(可能永远),我们在 Go 中不会有静态变量......但是有没有办法以某种方式保护变量?


import (

    "net/http"

    "net/http/cookiejar"

)


func funcThatDoesRequests(request Request) (response Response, e error){

  static cookieJar, _ := cookiejar.New(nil)

  static client := http.Client{ Jar: cookieJar }

  response, e = client.Do(handshakeRequest)

  return

}

我不希望 httpclient及其cookieJar浮动,以便其他函数可以对它们做一些事情。我需要cookieJar和client只能在funcThatDoesRequests. 那可能吗?


静态变量(请参阅伪代码示例中的 static 关键字)是 C 和 PHP 等语言中存在的一项功能,以命名一些常见语言。


万千封印
浏览 157回答 2
2回答
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Go