Go 在戈朗杀死李斯特并为其服务

Go 在戈朗杀死李斯特并为其服务,go,sublimetext2,sublimetext,sublimetext3,Go,Sublimetext2,Sublimetext,Sublimetext3,我正在尝试使用Sublime Text+GoSublime进行Golang开发 我正在使用Go中的Web服务器(ListenAndServe(“8000”)和handler)) 我遇到的问题是,当我运行Go进程时(另一个进程正在运行),第二个进程不工作(因为端口已经在使用中) 我想做的是,当我运行web.go时,如果其中一个已经在运行,请在运行这个之前关闭它 Sublime Text 3的构建系统似乎没有跟踪上一次执行-因此我不知道终止的最佳方式。当我运行CTRL+B时,它不会阻塞,它会在另一个

我正在尝试使用Sublime Text+GoSublime进行Golang开发

我正在使用Go中的Web服务器(
ListenAndServe(“8000”)和handler)

我遇到的问题是,当我运行Go进程时(另一个进程正在运行),第二个进程不工作(因为端口已经在使用中)

我想做的是,当我运行web.go时,如果其中一个已经在运行,请在运行这个之前关闭它

Sublime Text 3的构建系统似乎没有跟踪上一次执行-因此我不知道终止的最佳方式。当我运行CTRL+B时,它不会阻塞,它会在另一个线程中执行构建系统——这意味着在执行下一个线程之前,我不能CTRL+C。所以我要做的是在启动下一个进程之前,通过命令行终止现有进程

因此,我正在寻找一个带有Sublime Text的构建系统配置的解决方案,或者甚至让Go进程本身检查是否正在运行并终止该进程


想法?从终端来回交换有点烦人。

不确定我是否正确理解这个问题

但是在sublime文本构建控制台中,有一个tskill命令,它可以终止从控制台启动的活动任务。因此,您可以键入
Ctrl+B
来调用控制台,并键入
tskill
来终止正在运行的web.go任务。还有其他别名
tskill、任务重播或任务go
。参考文献是。之后,您可以运行其他命令,包括go run

此外,还有一个
replay
命令。“它类似于运行,但在运行之前会尝试取消任何活动执行”。我觉得这是你想要的

此外,Gosublime命令shell具有sh命令模式。它非常灵活,例如type
sh killall-web;运行web.go
或运行shell脚本来运行它


希望能有帮助。

不确定我是否正确理解了这个问题

但是在sublime文本构建控制台中,有一个tskill命令,它可以终止从控制台启动的活动任务。因此,您可以键入
Ctrl+B
来调用控制台,并键入
tskill
来终止正在运行的web.go任务。还有其他别名
tskill、任务重播或任务go
。参考文献是。之后,您可以运行其他命令,包括go run

此外,还有一个
replay
命令。“它类似于运行,但在运行之前会尝试取消任何活动执行”。我觉得这是你想要的

此外,Gosublime命令shell具有sh命令模式。它非常灵活,例如type
sh killall-web;运行web.go
或运行shell脚本来运行它


希望它能有所帮助。

您使用的是什么操作系统?我建议将程序包装在一个bash脚本中,该脚本存储文件的pid,这样您就可以动态地杀死它。请参阅:@MattDMo Mac OSX Maverickshow with
--start service
?我认为您不应该在sublime文本构建控制台中运行程序。也许在另一个窗口中打开一个终端?你在使用什么操作系统?我建议用bash脚本包装这个程序,保存文件的pid,这样你就可以动态地杀死它。请参阅:@MattDMo Mac OSX Maverickshow with
--start service
?我认为您不应该在sublime文本构建控制台中运行程序。也许在另一个窗口打开终端?你正确理解了问题。重播正是我想要的。谢谢你正确理解了这个问题。重播正是我想要的。谢谢