当前位置: 首页 > news >正文

如何备份网站程序网站标题在线制作

如何备份网站程序,网站标题在线制作,未来中森网站建设,如何用子域名做网站Powered by:NEFU AB-IN 文章目录 Go 语言进阶与依赖管理 | 青训营 语言进阶依赖管理测试 Go 语言进阶与依赖管理 | 青训营 GO语言工程实践课后作业#xff1a;实现思路、代码以及路径记录 语言进阶 Go可以充分发挥多核优势#xff0c;高效运行 Goroutine是Go语言中的协程…Powered by:NEFU AB-IN 文章目录 Go 语言进阶与依赖管理 | 青训营 语言进阶依赖管理测试 Go 语言进阶与依赖管理 | 青训营 GO语言工程实践课后作业实现思路、代码以及路径记录 语言进阶 Go可以充分发挥多核优势高效运行 Goroutine是Go语言中的协程一种轻量级的线程由Go语言的运行时管理可以实现高并发的程序设计由于轻量级的特性goroutine可以创建成千上万个而且消耗的资源也相对较少。 在函数前加入go关键字为一个函数创建协程运行 package mainimport (fmttime )func hello(i int) {fmt.Println(hello goroutine : fmt.Sprint(i)) }func HelloGoRoutine() {for i : 0; i 5; i {go func(j int) {hello(j)}(i) // 向函数传入i参数作为j的值}time.Sleep(time.Second) }func main() {HelloGoRoutine() }/** hello goroutine : 4* hello goroutine : 2* hello goroutine : 1* hello goroutine : 3* hello goroutine : 0*/ 运行结果是乱序的表示是并行运行的 CSP(Communicating Sequential Processes)通信顺序进程,是Go语言中重要的并发模型。 主要特征有 顺序进程每个进程内部按顺序执行。通信进程进程间通过通信(Message Passing)来协作。数据流程序通过在进程间传递数据来工作。 Go语言的CSP实现主要通过goroutine和channel goroutine作为顺序执行的进程channel用于goroutine间的通信 无缓冲通道同步通道 在Go语言中通过通信来共享内存是一种并发编程的思想即通过goroutine之间的通信来进行数据共享而不是直接共享内存空间。 具体来说当多个goroutine需要共享数据时传统的做法是使用共享内存的方式即使用互斥锁等机制来控制对共享变量的访问。但在Go语言中引入了一种更优雅的方式即使用通道channel来实现数据共享。 package mainimport fmtfunc CalSquare() {src : make(chan int) // 生产无缓冲dest : make(chan int, 3) // 消费缓冲3个元素// 子协程发送0-9数字go func() {defer close(src)for i : 0; i 10; i {src - i}}()// 子协程计算输入数字的平方go func() {defer close(dest)for i : range src {dest - i * i}}()// 主协程输出最后的平方数for i : range dest {// 复杂操作// ...fmt.Println(i)}}func main() {CalSquare() }sync.WaitGroup是Go语言中的一个常用同步工具可以用于等待一组goroutine结束。 内部维护了一个计数器暴露add done wait三个方法 之前例子的优化 /** Author: NEFU AB-IN* Date: 2023-08-24 15:15:22* FilePath: \GoTest\11\11.go* LastEditTime: 2023-08-24 15:17:01*/ package mainimport (fmtsync )func hello(i int) {fmt.Println(hello goroutine : fmt.Sprint(i)) }func HelloGoRoutine() {var wg sync.WaitGroupwg.Add(5)for i : 0; i 5; i {go func(j int) {defer wg.Done()hello(j)}(i)}wg.Wait() }func main() {HelloGoRoutine() }/** hello goroutine : 4* hello goroutine : 2* hello goroutine : 1* hello goroutine : 3* hello goroutine : 0*/ 依赖管理 原生SDKSoftware Development Kit是指为特定操作系统或平台开发应用程序的软件工具包。它包含了一系列的开发工具和文档用于帮助开发人员创建、测试和部署应用程序。原生SDK通常由操作系统或平台的开发者提供可以让开发者利用操作系统或平台的特定功能和特性开发高性能、可靠的应用程序。 go path 弊端无法实现package多版本控制 go vendor 弊端依赖关系隐藏在vendor中理解和维护都更困难。依赖关系隐藏在vendor中理解和维护都更困难。 go moudle (类似于Java里的maven) ${major}.${minor}.${patch} major为大版本patch为bug修复版本如v1.3.0 依赖图 保证v1.3和v1.4是兼容的 依赖分发 - go proxy 其实是个服务站点(中心仓库管理依赖库)缓存仓库和版本直接从proxy拉取依赖 GOPROXY 是用逗号分隔的URL列表 go get 下载包的源码解压到GOPATH下解析并下载依赖缓存各版本的依赖会更新go.mod文件 go mod initdownloadtidy 测试 单元测试 比如 func Add(a int, b int) int{return ab }func TestAdd(t *testing.T) {output:Add(1, 2)expectOutput:3if output ! expectOutput{t.Error(Add failed)} } 运行go test xxx.go 即可 assert Go语言内置的testing包提供了assert包来进行单元测试的断言assert能大大简化测试代码不需要过多的if条件判断只要最终结果不符合断言,就会自动标记为测试失败。 package Testimport (github.com/stretchr/testify/asserttesting )func Add(a int, b int) int {return a b }func TestAdd(t *testing.T) {output : Add(1, 2)expectOutput : 3assert.Equal(t, expectOutput, output) } 覆盖率 当一个程序有多个分支时就会产生多种测试案例如果所有的测试案例都符合结果那覆盖率就是100%。运行 go test xxx.go --cover可以查看测试的覆盖率。一般覆盖率在50%~60%较高覆盖率在80%测试分支相互独立全面覆盖 Mock测试 如果有一些外部依赖可以通过mock实现 mock函数是用来模拟或替代指定函数的行为以便在测试中控制函数的返回值或行为。 打桩是指在测试过程中为函数设置预期的返回值或行为以确保测试代码的可重复性和可控性。通常使用mock函数来进行打桩操作通过设置mock函数的返回值或行为模拟特定情况下函数的行为以便进行测试或验证。 基准测试 分析系统性能时在本地会比较方便 基准测试是一种评估计算机系统、硬件或软件性能的方法。它通过运行一系列标准化的测试程序以衡量系统在特定负载条件下的表现从而提供了系统性能的参考标准或基准值。基准测试可以用于比较不同硬件或软件配置之间的性能差异优化系统性能或者评估系统变化对性能的影响。 基准测试通常涉及多个方面的测试包括计算能力、内存管理、磁盘或存储访问、网络吞吐量等并通过测量和记录相关性能指标如处理速度、响应时间、吞吐量等来评估系统的性能。基准测试可以在实验室环境中进行也可在真实场景中进行。 基准测试的结果可以用于为购买决策提供参考评估系统在实际使用中的适应性或者用于系统优化和调整以达到更好的性能和效率。基准测试在计算机硬件和软件开发、系统管理和性能优化等领域都有广泛的应用。
http://www.hkea.cn/news/14383068/

相关文章:

  • 汇鑫小学网站建设网站开发看掉一些功能
  • 中国建设银行南京分行网站首页学做效果图的网站
  • 河源市住房和城乡建设局网站推广平台
  • 设计色彩的门户网站模板沈阳做网站企业
  • 网站建设空心正方形网页设计什么主题好
  • 唐山网站建设赫鸣科技模板网站建设价位
  • 盐城专业做网站的公司业务员怎样网上找客户
  • 淘宝网站建设特点聊城做网站的公司市场
  • 购物网站的建设时间西安网是科技发展有限公司
  • 深圳大型网站开发大连网站建设 仟亿
  • idea制作网站2345浏览器打开网址
  • 北京市住房和城乡建设部网站官网内部网站开发
  • 1号网站建设 高端网站建设凡科建站代理商
  • 中英文网站建设大概多少钱wordpress怎么更改主题文字颜色
  • 曲靖做网站建设的公司中山精品网站建设方案
  • 做网站放广告收益店标logo图片免费制作
  • 企业网站搜索优化网络推广如何做好营销型网站用户体验
  • 自己设计一个网站首页怎么制作u盘启动盘
  • 产品单页营销型网站模板下载装修平台哪个口碑最好
  • 中韩双语网站制作价格windows优化
  • 网站制作公司转型数据建设flash网站
  • 药店网站源码深圳宝安网站推广
  • 大丰哪家专业做网站wordpress自定义结构
  • 英文互动网站建设梅县区住房和城乡规划建设局官方网站
  • 网站建设大量定制阶段设计logo网站官网
  • 怎么用html做移动网站吗无锡网站设计公司电话
  • 北京建站公司哪家好百姓网app官方最新下载
  • 成都科技网站建设咨询竞价单页网站模板
  • 东莞知名网站免费企业建站开源系统
  • 网站建设的基本元素陕西省建设协会岗位证查询网站