8 chenchongswjtu

尚未进行身份认证

游戏服务器开发,后端开发

等级
博文 64
排名 25w+

visual studio 2019密钥

企业版:BF8Y8-GN2QH-T84XB-QVY3B-RC4DF专业版:NYWVH-HT4XC-R2WYW-9Y3CM-X4V3Y

2019-05-07 16:58:26

【golang】获取本机IP和外网IP

获取本机IP//获取本机网卡IPfuncgetLocalIP()(ipv4string,errerror){ var( addrs[]net.Addr addrnet.Addr ipNet*net.IPNet//IP地址 isIpNetbool ) //获取所有网卡 ifaddrs,err=net.Interfa...

2019-03-14 10:20:15

【MySQL】中的乐观锁与悲观锁

为什么需要锁在并发环境下,如果多个客户端访问同一条数据,此时就会产生数据不一致的问题,如何解决,通过加锁的机制,常见的有两种锁,乐观锁和悲观锁,可以在一定程度上解决并发访问。乐观锁乐观锁,顾名思义,对加锁持有一种乐观的态度,即先进行业务操作,不到最后一步不进行加锁,"乐观"的认为加锁一定会成功的,在最后一步更新数据的时候在进行加锁,乐观锁的实现方式一般为每一条数据加一个版本号,具体流程...

2019-03-08 17:59:23

【golang】逃逸分析

写过C/C++的同学都知道,调用著名的malloc和new函数可以在堆上分配一块内存,这块内存的使用和销毁的责任都在程序员。一不小心,就会发生内存泄露,搞得胆战心惊。切换到Golang后,基本不会担心内存泄露了。虽然也有new函数,但是使用new函数得到的内存不一定就在堆上。堆和栈的区别对程序员“模糊化”了,当然这一切都是Go编译器在背后帮我们完成的。一个变量是在堆上分配,还是在栈上分配,...

2019-03-04 13:59:19

c++11新特性

=default,=delete如果你自行定义了一个构造函数,那么编译器就不会再给你一个默认拷贝构造函数。如果你强制加上=default,就可以重新获得并使用默认的拷贝构造函数。C++11中右值引用理解右值引用是学习“移动语义”(movesemantics)的基础。而要理解右值引用,就必须先区分左值与右值。对左值和右值的一个最常见的误解是:等号左边的就是左值,等号右边的就是...

2019-02-26 10:16:48

win10 摄像头启动不了

1.检查摄像头驱动是否安装。通过电脑-》设备管理器查看2.驱动这些都安好,但是还是不能使用摄像头,可能是由于Win10系统,对于隐私的保护造成的。可以通过设置中的相机隐私设置,打开相关权限...

2019-02-23 17:41:59

尚学堂马士兵,高琪等讲师的Java及javaee全套资源派送

https://blog.csdn.net/luo609630199/article/details/80686701

2019-02-20 11:48:49

Go线程实现模型MPG

M指的是Machine,一个M直接关联了一个内核线程。由操作系统管理。 P指的是”processor”,代表了M所需的上下文环境,也是处理用户级代码逻辑的处理器。它负责衔接M和G的调度上下文,将等待执行的G与M对接。 G指的是Goroutine,其实本质上也是一种轻量级的线程。包括了调用栈,重要的调度信息,例如channel等。P的数量由环境变量中的GOMAXPROCS决定,通常来说它是和核心...

2019-02-18 11:00:00

【golang】channel总结

·给一个nilchannel发送数据,造成永远阻塞·从一个nilchannel接收数据,造成永远阻塞·给一个已经关闭的channel发送数据,引起panic·从一个已经关闭的channel接收数据,立即返回一个零值...

2019-02-14 16:43:38

【golang】方法的结构指针接收者和结构值接收者

结构体(1)结构指针接收者,顾名思义,会在方法内部改变该结构内部变量的值; (2)结构值接收者,在方法内部对变量的改变不会影响该结构。 packagemainimport"fmt"typeMystruct{ numint}func(mMy)AddOne(){ m.num++}func(m*My)AddTwo(){ m.num+=...

2019-02-14 15:06:15

后端开发面试题

https://blog.csdn.net/briup_acmer/article/details/78961311

2019-02-13 16:15:19

【golang】go-echarts可视化的第三方库

在Golang这门语言中,目前数据可视化的第三方库还是特别少,go-echarts 的开发就是为了填补这部分的空隙。Echarts 是百度开源的非常优秀的可视化图表库,凭借着良好的交互性,精巧的图表设计,得到了众多开发者的认可。也有其他语言为其实现了相应语言版本的接口,如Python的 pyecharts,go-echarts也是借鉴了pyecharts的一些设计思想。http:...

2019-02-11 09:50:53

【golang】垃圾回收机制

常见GC算法趁着这个机会我总结了一下常见的GC算法。分别是:引用计数法、Mark-Sweep法、三色标记法、分代收集法。1.引用计数法原理是在每个对象内部维护一个整数值,叫做这个对象的引用计数,当对象被引用时引用计数加一,当对象不被引用时引用计数减一。当引用计数为0时,自动销毁对象。目前引用计数法主要用在c++标准库的std::shared_ptr、微软的C...

2019-02-01 17:29:45

回调机制

//定义主函数,回调函数作为参数functionA(callback){callback();console.log('我是主函数');}//定义回调函数functionB(){setTimeout("console.log('我是回调函数')",3000);//模仿耗时操作}//调用主函数,将函数B传进去A(B);...

2019-02-01 15:29:18

【golang】每隔几分钟执行一个函数可以这样做

使用定时器 使用这种方式 gofunction()funcfunction(){ //TODO具体逻辑 //每5分钟执行一次 time.AfterFunc(5*time.Minute,function)} 

2019-02-01 14:42:02

【golang】中代码"0123456789ABCDEF"[0]

表达式”0123456789ABCDEF”[0]是一个常用的技巧,它可以快速将一个数字转换为16进制字符。”0123456789ABCDEF”是一个字符串字面量,类型是char[17](在C中)或者constchar[17](在C++中),转换后的指针类型分别为char*和constchar*,因此”0123456789ABCDEF”[0]就是第0个元素’0’。这个技巧常常用在进制转换...

2019-02-01 10:37:14

golang: 详解interface和nil

packagemainimport( "fmt" "reflect")typePeopleinterface{ Show()}typeStudentstruct{}func(stu*Student)Show(){}funclive()People{ varstu*Student returnstu}funcmain()...

2019-01-30 18:09:42

golang在遍历slice中的坑

packagemainimport"fmt"funcmain(){ pase_student()}typestudentstruct{ Namestring Ageint}funcpase_student(){ m:=make(map[string]*student) stus:=[]student{ {Name:"zhou",...

2019-01-30 16:10:35

MySQL数据库索引为什么使用B+数

为何选择用B+树做索引而不用B-树或红黑树B+树只有叶节点存放数据,其余节点用来索引,而B-树是每个索引节点都会有Data域。所以从InooDB的角度来看,B+树是用来充当索引的,一般来说索引非常大,尤其是关系性数据库这种数据量大的索引能达到亿级别,所以为了减少内存的占用,索引也会被存储在磁盘上。MySQL如何衡量查询效率呢?主要是通过磁盘IO次数。 B-树...

2019-01-30 15:09:56

golang排序

golang归并排序 packagemainimport"fmt"funcmain(){ a:=[]int{8,6,5,4,3,2,1} mergeSort(a,0,len(a)-1) fmt.Println(a)}funcmergeSort(a[]int,l,rint){ ifl>=r{//必须要有=,只有一个...

2019-01-30 10:14:03
奖章
  • Github
    Github
    绑定github第三方账户获取
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!