golang怎么让他不自动退出你

hellsam · 2018-02-12 12:55:59 · 4844 次点击 · 大约8小时之前 开始浏览    置顶
这是一个创建于 2018-02-12 12:55:59 的主题,其中的信息可能已经有所发展或是发生改变。

比如

func main(){
    fmt.println("test123")
}

运行EXE一闪消失,  除了在CMD下运行,, 如何让他点击EXE 不自动消失呢。

有疑问加站长微信联系(非本文作者)

入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889

4844 次点击  
加入收藏 微博
7 回复  |  直到 2018-02-25 13:40:13
tk103331
tk103331 · #1 · 7年之前

main方法执行完了,程序就结束了,肯定会关闭啊。

得把程序"阻塞"住,具体怎么做看你要写什么类型的程序了。

比如repl类的程序,你就用for循环里面套Scanner;服务类的就监听端口,for循环里面accept;等等

justay
justay · #2 · 7年之前

简单直接的,实现类似按任意键继续的功能

func main(){
    fmt.Println("test123")
    fmt.Scan()
}
jarlyyn
jarlyyn · #3 · 7年之前

常见的是建立个quit 的chan,然后放在 main里读。

什么时候要退出了,就close这个chan

welcome_home
welcome_home · #4 · 7年之前
可以这样试试:
fmt.println("test123")
select{}
nickluo
nickluo · #5 · 7年之前

实际项目中用信号的比较多

done := make(chan os.Signal, 1) signal.Notify(done, os.Interrupt, syscall.SIGINT, syscall.SIGTERM)

fmt.Println("start")
<-done
minicase
minicase · #6 · 7年之前

select{}

alphayan
alphayan · #7 · 7年之前
minicaseminicase #6 回复

select{}

可以吗?我试过,会报错。

添加一条新回复 (您需要 登录 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传