11
2020
04
11
2020
04
说说go语言的main函数
main函数不能带参数main函数不能定义返回值main函数所在的包必须为main包main函数中可以使用flag包来获取和解析命令行参数
作者:ghjk | 分类: go语言面试题 | 浏览:292 | 评论:0
11
2020
04
说说go语言的同步锁?
(1) 当一个goroutine获得了Mutex后,其他goroutine就只能乖乖的等待,除非该goroutine释放这个Mutex(2) RWMutex在读锁占用的情况下,会阻止写,但不阻止读(3) RWMutex在写锁占用情况下,会阻止任何其他goroutine(无论读和写)进来,整个锁相当于由该goroutine独占
作者:ghjk | 分类: go语言面试题 | 浏览:288 | 评论:0
11
2020
04
说说go语言的channel特性?
A. 给一个 nil channel 发送数据,造成永远阻塞B. 从一个 nil channel 接收数据,造成永远阻塞C. 给一个已经关闭的 channel 发送数据,引起 panicD. 从一个已经关闭的 channel 接收数据,如果缓冲区中为空,则返回一个零值E. 无缓冲的channel是同步的,而有缓冲的channel是非同步的
作者:ghjk | 分类: go语言面试题 | 浏览:269 | 评论:0
11
2020
04
11
2020
04
说说go语言的beego框架?
A. beego是一个golang实现的轻量级HTTP框架B. beego可以通过注释路由、正则路由等多种方式完成url路由注入C. 可以使用bee new工具生成空工程,然后使用bee run命令自动热编译
作者:ghjk | 分类: go语言面试题 | 浏览:344 | 评论:0
11
2020
04
说说go语言的goconvey框架?
A. goconvey是一个支持golang的单元测试框架B. goconvey能够自动监控文件修改并启动测试,并可以将测试结果实时输出到web界面C. goconvey提供了丰富的断言简化测试用例的编写
作者:ghjk | 分类: go语言面试题 | 浏览:281 | 评论:0
11
2020
04
go语言中,GoStub的作用是什么?
A. GoStub可以对全局变量打桩B. GoStub可以对函数打桩C. GoStub不可以对类的成员方法打桩D. GoStub可以打动态桩,比如对一个函数打桩后,多次调用该函数会有不同的行为
作者:ghjk | 分类: go语言面试题 | 浏览:393 | 评论:0
11
2020
04
说说go语言的select机制?
A. select机制用来处理异步IO问题B. select机制最大的一条限制就是每个case语句里必须是一个IO操作C. golang在语言级别支持select关键字
作者:ghjk | 分类: go语言面试题 | 浏览:294 | 评论:0
11
2020
04
说说进程、线程、协程之间的区别?
进程是资源的分配和调度的一个独立单元,而线程是CPU调度的基本单元;同一个进程中可以包括多个线程;进程结束后它拥有的所有线程都将销毁,而线程的结束不会影响同个进程中的其他线程的结束;线程共享整个进程的资源(寄存器、堆栈、上下文),一个进程至少包括一个线程;进程的创建调用fork或者vfork,而线程的创建调用pthread_create;线程中执行时一般都要进行同步和互斥,因为他们共享同一进程的所有资源; 进程是资源分配的单位 线程是操作系统调度的单位 进程切换需要
作者:ghjk | 分类: go语言面试题 | 浏览:290 | 评论:0