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

网站过期会怎样解决东莞经济贸易学校网络营销

网站过期会怎样解决,东莞经济贸易学校网络营销,怎么优化网站关键词,电脑系统做的好的网站好题目一#xff1a;单元测试中使用—打桩 打桩概念#xff1a;使用A替换 原函数B#xff0c;那么A就是打桩函数打桩原理#xff1a;运行时#xff0c;通过一个包#xff0c;将内存中函数的地址替换为桩函数的地址打桩操作#xff1a;利用Patch#xff08;#xff09;函…题目一单元测试中使用—打桩 打桩概念使用A替换 原函数B那么A就是打桩函数打桩原理运行时通过一个包将内存中函数的地址替换为桩函数的地址打桩操作利用Patch函数将调用外部依赖等函数数据库等依赖函数替换为自己写的函数这样就是实现了不对外部数据的一个强依赖最简单的用法官方解释Monkey’s API is very simple and straightfoward. Call monkey.Patch(, ) to replace a function. For example: package mainimport (fmtosstringsbou.ke/monkey )func main() {monkey.Patch(fmt.Println, func(a ...interface{}) (n int, err error) {s : make([]interface{}, len(a))for i, v : range a {s[i] strings.Replace(fmt.Sprint(v), hell, *bleep*, -1)}return fmt.Fprintln(os.Stdout, s...)})fmt.Println(what the hell?) // what the *bleep*? }下面是对一个io文件的mock示例文件为外部依赖存在不稳定性质因此使用mock package testimport (bou.ke/monkeybufiogithub.com/stretchr/testify/assertosstringstesting )func readFirstLine() string {open, err : os.Open(file.txt)defer open.Close()if err ! nil {return }scanner : bufio.NewScanner(open)for scanner.Scan() {return scanner.Text()}return }func replaceLine() string {line : readFirstLine()afterReplace : strings.ReplaceAll(line, 11, 00)return afterReplace }func TestReplace(t *testing.T) {monkey.Patch(readFirstLine, func() string { //注意是readFirstLine函数名而不是readFirstLinereturn line11})defer monkey.Unpatch(readFirstLine) // 注意是readFirstLine函数名而不是readFirstLineres : replaceLine()assert.Equal(t, line00, res) } 题二defer、recovery、panic执行顺序 准则panic当前函数的下一行代码不会被执行到当 panic 被触发后Go 语言的运行时机制会开始查找当前函数以及调用栈上的所有 defer 函数然后依次执行它们。在这个过程中如果某个 defer 函数中使用了 recover 函数那么 recover 就可以捕获到之前触发的 panic 异常恢复程序的正常执行流程从引发 panic 的函数返回继续执行后续代码,注意是直接在panic那里returnpanic当前函数的下面的代码依然不会被执行但是其他后续代码可以执行并且 recover 会返回 panic 时传递的参数在这里就是 “触发一个异常” 这个字符串可以在 defer 函数中根据返回值进行相应的处理比如打印异常信息等。 package mainimport fmtfunc inner() {defer func() {if r : recover(); r! nil {fmt.Printf(inner函数中的defer通过recover捕获到异常异常信息: %v\n, r)}}()panic(inner函数中触发异常)defer fmt.Println(这一行代码直接不会被执行) }func outer() {defer func() {fmt.Println(outer函数中的defer执行了)}()inner() }func main() {fmt.Println(程序开始执行)outer() //其中发生了panic如果没有recovery下面的代码将不再执行fmt.Println(outer函数调用结束后继续执行main函数后面的代码) }
http://www.dnsts.com.cn/news/62936.html

相关文章:

  • 网站建设app开发公司开发一款app软件需要学什么
  • 网站打不开建设中哪的问题家庭优化大师免费下载
  • 重钢建设公司官方网站玉树网站建设
  • wordpress 嵌入 php代码外贸推广seo招聘
  • 把做的网站发布打万维网上山东网站建设网
  • 山东网站备案注销湖南网站seo公司
  • 做网页建网站挣钱国家鼓励做网站的行业
  • 用word怎么做首页网站SEO网站布局优化
  • 找建网站公司oppo应用商店官网
  • 建设机械网站机构酒店机票最便宜的网站建设
  • 基于php技术的个人网站设计wordpress极验证登录
  • 湖南网站建设网络公司温州网络推广平台建设
  • 浦东网站建设外贸营销网站建设
  • 哪些公司的网站做的很好微信公众号网站怎么做
  • 网站建设与管理好学吗网页设计图片超链接
  • 设计网站猪八戒高大上的企业网站
  • 网站维护和建设实报告珠海哪里有网站建设
  • 企业档案网站建设国外视觉差网站
  • html网站开发实用技术搜索引擎外部优化有哪些渠道
  • 湛江市网站建设网站建设ui设计
  • 淘宝网站建设模板免费下载海南网站建设服务
  • ups国际快递网站建设国外网站 dns
  • 往公众号里放网站怎么做轻松推广网
  • 太原网站建设鸣蝉公司seo有哪些优缺点?
  • 白品网站建设北京家装公司十大排名
  • 有没有免费开网站的平台推广营销方案
  • 网站后台生成静态页面优秀的logo设计案例
  • 网站运营这么做志愿者网站时长码怎么做
  • 贵州网站外包网站开发需求收集
  • 网龙网络公司校园招聘百度排名优化