Loading

11 2020 档案

摘要:一、go中HTTP服务处理流程 超文本传输协议(HTTP,Hyper Text Transfer Protocol)是互联网上应用最为广泛的一种网络传输协议,所有的WWW文件都必须遵守这个标准。设计HTTP最初的目的是为了提供一种发布和接收HTML页面的方法。 HTTP 协议从诞生到现在,发展从1. 阅读全文
posted @ 2020-11-30 19:21 Every_dawn 阅读(211) 评论(0) 推荐(0)
摘要:一、UDP协议 UDP协议(User Datagram Protocol)中文名称是用户数据报协议,是OSI(Open System Interconnection,开放式系统互联)参考模型中一种无连接的传输层协议,不需要建立连接就能直接进行数据发送和接收,属于不可靠的、没有时序的通信,但是UDP协 阅读全文
posted @ 2020-11-27 17:39 Every_dawn 阅读(506) 评论(0) 推荐(0)
摘要:一、go语言实现TCP通信 TCP/IP(Transmission Control Protocol/Internet Protocol) 即传输控制协议/网间协议,是一种面向连接(连接导向)的、可靠的、基于字节流的传输层(Transport layer)通信协议,因为是面向连接的协议,数据像水流一 阅读全文
posted @ 2020-11-26 20:06 Every_dawn 阅读(297) 评论(0) 推荐(0)
摘要:一、TCP/IP协议 计算机与网络设备要相互通信,双方就必须基于相同的方法。比如,如何探测到通信目标、由哪一边先发起通信、使用哪种语言进行通信、怎样结束通信等规则都需要事先确定。不同的硬件、操作系统之间的通信,所有的这一切都需要一种规则。而我们就把这种规则称为协议(protocol)。 TCP/IP 阅读全文
posted @ 2020-11-25 19:40 Every_dawn 阅读(135) 评论(0) 推荐(0)
摘要:time包提供了时间的显示和测量用的函数。日历的计算采用的是公历。 type Duration int64 const ( Nanosecond Duration = 1 Microsecond = 1000 * Nanosecond Millisecond = 1000 * Microsecond 阅读全文
posted @ 2020-11-19 19:09 Every_dawn 阅读(106) 评论(0) 推荐(0)
摘要:一、File文件操作 file类是在os包中的,封装了底层的文件描述符和相关信息,同时封装了Read和Write的实现。 1、FileInfo接口 FileInfo接口中定义了File信息相关的方法。 go源码: // os包的Stat方法返回FileInfo接口 func Stat(name st 阅读全文
posted @ 2020-11-18 18:58 Every_dawn 阅读(233) 评论(0) 推荐(0)
摘要:一、认识反射 维基百科中的定义: 在计算机科学中,反射是指计算机程序在运行时(Run time)可以访问、检测和修改它本身状态或行为的一种能力。用比喻来说,反射就是程序在运行的时候能够“观察”并且修改自己的行为。 不同语言的反射模型不尽相同,有些语言还不支持反射。 Go 语言支持反射,它提供了一种机 阅读全文
posted @ 2020-11-14 18:07 Every_dawn 阅读(222) 评论(0) 推荐(0)
摘要:通道channel被认为是goroutine通信的管道。类似于水管里的水可以从一端流向另一端,数据可以从一端发送到另一端,通过通道接收。 当多个goroutine间想实现共享数据时,可以使用传统的同步机制(sync包的方法),但是go语言强烈建议使用channel通道来实现goroutine之间的通 阅读全文
posted @ 2020-11-09 20:39 Every_dawn 阅读(159) 评论(0) 推荐(0)
摘要:一、两个问题 1、同步执行问题 package main import ( "fmt" "time" ) func main() { go fun1() go fun2() fmt.Println("main函数等待") time.Sleep(time.Second * 1) fmt.Println 阅读全文
posted @ 2020-11-07 20:09 Every_dawn 阅读(128) 评论(0) 推荐(0)
摘要:一、什么是goroutine Goroutine是Go语言特有的名词。区别于进程Process,线程Thread,协程Coroutine,因为Go语言的创造者们觉得和他们是有所区别的,所以专门创造了Goroutine。 Goroutine是与其他函数或方法同时运行的函数或方法。Goroutines可 阅读全文
posted @ 2020-11-06 20:36 Every_dawn 阅读(93) 评论(0) 推荐(0)
摘要:一、并发性Concurrency 1、多任务 多任务是操作系统可以同时执行多个任务。如,可以一边听音乐,一边刷微博,一边聊QQ,还能同时开微信。这就是多任务同时运行。 2、线程process与进程thread、协程coroutine 进程是一个程序在一个数据集中的一次动态执行过程,可以简单理解为“正 阅读全文
posted @ 2020-11-05 18:57 Every_dawn 阅读(176) 评论(0) 推荐(0)
摘要:一、网页和浏览器 1、认识网页 网页主要由文字,图像和超链接等元素构成。当然,除了这些元素,网页还可以包含音频,视频等。网页是程序员写的代码经过浏览器的渲染,呈现在用户眼前的界面。 网页三剑客: HTML:超文本标记语言【结构】 CSS:层叠样式表【样式】 javascript:js【交互】 2、浏 阅读全文
posted @ 2020-11-04 20:08 Every_dawn 阅读(381) 评论(0) 推荐(0)
摘要:一、错误和异常的区别 错误指的是可能出现问题的地方出现了问题。比如打开一个文件时失败,这种情况在人们的意料之中 。 异常指的是不应该出现问题的地方出现了问题。比如引用了空指针,这种情况在人们的意料之外。 可见,错误是业务过程的一部分,而异常不是 。 二、错误演示 go语言中,错误是一种数据类型,使用 阅读全文
posted @ 2020-11-04 20:06 Every_dawn 阅读(281) 评论(0) 推荐(0)
摘要:type是go语法里的重要而且常用的关键字,type绝不只是对应于C/C++中的typedef。搞清楚type的使用,就容易理解go语言中的核心概念struct、interface、函数等的使用。 一、类型定义 1、定义结构体 使用type可以定义结构体 type Preson struct { n 阅读全文
posted @ 2020-11-03 18:54 Every_dawn 阅读(414) 评论(0) 推荐(0)
摘要:go并不是一个纯面向对象的编程语言。在go中的面向对象,结构体替换了类。 go并没有提供类class,但是它提供了结构体struct,方法method可以在结构体上添加。提供了捆绑数据和方法的行为,这些数据和方法与类类似。 面向对象的基本思想主要体现在封装,继承以及多态等的设计与运用上。下面来看看封 阅读全文
posted @ 2020-11-02 18:59 Every_dawn 阅读(132) 评论(0) 推荐(0)
摘要:面向对象世界中的接口的一般定义是“接口定义对象的行为”。它表示让指定对象应该做什么。实现这种行为的方法(实现细节)是针对对象的。 在Go中,接口是一组方法签名。当类型为接口中的所有方法提供定义时,它被称为实现接口。它与OOP非常相似。接口指定了类型应该具有的方法,类型决定了如何实现这些方法。 在go 阅读全文
posted @ 2020-11-02 08:13 Every_dawn 阅读(100) 评论(0) 推荐(0)