- 博客(7)
- 收藏
- 关注
原创 go 鸭子类型
接口interface:只要一个变量,含有接口类型中的所有方法,那么这个变量就实现这个接口。鸭子类型的主要思想:将结构体看成一个类。
2023-06-08 10:41:43 160
原创 go channel信道
在go中是一种特殊的类型,在任何时候,同时只能有一个goroutine访问通道进行发送和获取数据。goroutine间通过通道就可以通信。channel类似队列先进先出。
2023-06-06 15:54:27 50
原创 协程~简介
由于协程运行在用户态,能够大大减少上下文切换带来的开销,并且协程调度器把可运行的协程逐个调度到线程中执行,同时及时把阻塞的协程调度出线程,从而有效的避免了线程的频繁切换,达到了使用少量的线程实现高并发的效果,但是对于一个线程来说每一时刻只能运行一个协程。协程调度器按照调度策略把协程调度到线程中执行,协程调度器由应用程序的runtime包提供,用户使用go关键字即可创建协程。与线程相比,协程不受操作系统调度。协程可以理解为轻量级线程;一个线程可以拥有多个协程;
2023-06-06 15:52:38 61
原创 go 文件操作
文件是数据源(保存数据的地方),主要作用就是保存数据;我们常用的mysql数据库底层也是将数据存储到文件中的。数据在数据源(文件)和程序(内存)之间经历的路径。数据从数据源(文件)到程序(内存)的路径。数据从程序(内存)到数据源(文件)的路径。文件在程序中是以流的形式来操作的。flag:文件的打开模式。
2023-06-02 15:42:29 133
原创 go waitgroup
我们开启一个子协程但并不知道这个协程执行完需要多久,所以预估一个时间5秒,可能几毫秒就执行完了,此时无论这个协程是否执行完,我们都需要继续等待,这样就造成了浪费资源的情况。如果我们设置了waitgroup后我们就不需要等待,当子协程一执行完成就立马往下执行,不会有等待的情况。主要用来避免程序执行完成后继续等待,浪费资源。
2023-05-24 14:38:50 67 1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人