Advertisement

Go语言协程池的实现思路基于Task、Job和Worker模型

阅读量:

1. 铺垫:Go 的接收器Receiver

Go语言中并不存在传统意义上的类,但允许为类型(包括结构体和自定义类型)定义方法。所谓方法,即为带有接受者的函数,其中接受者被声明在func关键字与函数名之间。这种方法的定义方式可以视为为结构体添加函数功能,其特性与C++语言中类的方法具有相似之处。

复制代码
 type Person struct {

    
     name string
    
     age int
    
 }
    
  
    
 func (p Person) say() {
    
     fmt.Printf("I'm %s,%d years old\n",p.name,p.age)
    
 }
    
    
    
    

接收者类型既可以为struct,也可以是struc结构的指针。

  • 当接收者的类型为struct时
复制代码
 package main

    
  
    
 import "fmt"
    
  
    
 type Person struct {
    
 name string
    
 age int
    
 }
    
 func (p Person) say() {
    
 fmt.Printf("I'm %s,%d years

全部评论 (0)

还没有任何评论哟~