本文主要是介绍Golang的并发编程(1),对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
package main
import (
"fmt"
"strings"
"time"
)
type LogProcess struct {
rc chan string
wc chan string
path string
influxDBDsn string
}
func (l *LogProcess) ReadFromFile() {
//读取
line := "message"
l.rc <- line
}
func (l *LogProcess) Process() {
//解析
data := <-l.rc
l.wc <- strings.ToUpper(data)
}
func (l *LogProcess) WriteToInfluxDB() {
//写入
fmt.Println(<-l.wc)
}
func main() {
lp := &LogProcess{
rc: make(chan string),
wc: make(chan string),
path: "/tmp/access.log",
influxDBDsn: "username&password..",
}
go lp.ReadFromFile()
go lp.Process()
go lp.WriteToInfluxDB()
time.Sleep(1*time.Second)
}
这篇关于Golang的并发编程(1)的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!