当前位置: 首页 > 面试题库 >

有什么办法可以使Go的频道表现得像个堆栈

桂阳文
2023-03-14
问题内容

据我所知,默认情况下,转到频道的行为就像一个队列,先进先出。有什么方法可以改变它们以先进先出吗?

基本上,我正在执行搜索,并且想对内存限制使用DFS而不是BFS。


问题答案:

不,这是不可能的-通道始终是FIFO。您可以使用package
container/heap



 类似资料:
  • 问题内容: 当我执行一些go实践代码时,遇到一个问题,通道可以关闭两次,如下所示: 输出: 但是,当我手动关闭通道两次时,我得到了。 为什么上面的代码可以两次关闭? 问题答案: 一个通道只能关闭一次,尝试关闭一个已关闭的通道紧急情况。 但接收从封闭通道没有限制,从关闭信道接收: 封闭通道上的接收操作始终可以立即进行,在接收到任何先前发送的值之后,得出元素类型的零值。 Go应用程序运行直到其主要go

  • 我一直在关注快板5平台和他的文件管理器使用的教程!openFile.eof(),我听说它不好,我很确定它是什么让我的矢量下标超出范围错误。除了它,还有什么我可以使用的吗?另外,你能检查一下我的图层类,以防我的矢量下标超出范围错误吗?我想不出来,我很确定它来自文件管理器,但我不知道。 它仅输出地图的第一行。当我把它改成“而”(标准:::getline(打开文件,行))时,我甚至从未去过标准::cou

  • 问题内容: 我想匹配}是动态定义的。它可能有句点和破折号,并且里面有很多东西,我真的需要逃脱它。 PHP提供了一种安全地转义所有特殊字符的方法。我想知道Go是否提供任何形式的模拟。 问题答案: 做事。

  • 问题内容: 我有类似 “&ampauml; s&amparing;”之 类的字符串 需要像这样的 “äså” 进行转换请在这里帮助我。 提前致谢 问题答案: 看一下Apache Commons库中的类。(具体方法)。

  • 问题内容: 有什么办法可以反编译Linux .so? 问题答案: 有反编译器,但是反编译器可能不会以与原始程序所用语言相同的语言发出代码。 也有反汇编程序,可以将机器代码重新汇编为汇编程序。 反编译Wiki 可能是其他信息的良好来源。

  • 问题内容: 有什么办法可以限制芹菜的工人数量?我的服务器很小,芹菜总是在1个核心处理器上创建10个进程。我想将此数目限制为3个进程。 问题答案: 我尝试在settings.py文件中将并发设置为1,将max_tasks_per_child设置为1,并同时运行3个任务。它只是以用户的身份生成1个进程,而以芹菜的形式生成其他2个进程。它应该只运行1个进程,然后等待其完成再运行另一个进程。 我正在使用d