- 博客(1035)
- 资源 (11)
- 收藏
- 关注
原创 一个golang牛人的blog 这里记录一下 以后慢慢学习
http://legendtkl.com/booklist/一个golang牛人的blog 这里记录一下 以后慢慢学习
2020-08-12 17:06:19 348
原创 线程的查看以及利用gdb调试多线程
https://blog.csdn.net/zhangye3017/article/details/80382496
2020-06-19 16:00:46 347
转载 调试多线程程序
在某些操作系统(例如GNU / Linux和Solaris)中,单个程序可能具有多个执行线程。线程的精确语义因一个操作系统而异,但通常,一个程序的线程类似于多个进程,只是它们共享一个地址空间(也就是说,它们都可以检查和修改相同的变量)。另一方面,每个线程都有自己的寄存器和执行堆栈,也许还有私有内存。GDB提供了以下调试多线程程序的工具:自动通知新线程 '线程thread-id',在线程之间切换的命令 '信息线程',用于查询现有线程的命令 '线程适用[thread-id-list|全部]...
2020-06-19 14:12:37 1142
转载 如何使用strace+pstack利器分析程序性能
引言有时我们需要对程序进行优化、减少程序响应时间。除了一段段地对代码进行时间复杂度分析,我们还有更便捷的方法吗?若能直接找到影响程序运行时间的函数调用,再有针对地对相关函数进行代码分析和优化,那相比漫无目的地看代码,效率就高多了。将strace和pstack工具结合起来使用,就可以达到以上目的。strace跟踪程序使用的底层系统调用,可输出系统调用被执行的时间点以及各个调用耗时;pstack工具对指定PID的进程输出函数调用栈。下面我们通过一个简单的消息收发程序,说明使用strace、pstack
2020-06-19 11:16:53 180
转载 linux命令-- pstack命令(跟踪进程栈)
linux命令-- pstack命令(跟踪进程栈)pstack是一个shell脚本,用于打印正在运行的进程的栈跟踪信息,它实际上是gstack的一个链接,而gstack本身是基于gdb封装的shell脚本.。此命令可显示每个进程的栈跟踪。pstack 命令必须由相应进程的属主或 root 运行。可以使用 pstack 来确定进程挂起的位置。此命令允许使用的唯一选项是要检查的进程的 PID。与jstack功相比, 它能对潜在的死锁予以提示, 而pstack只提供了线索, 需要gdb进一步的确定。p
2020-06-19 10:15:10 1198
转载 Linux操作系统的pstack工具
Linux操作系统的pstack工具Solaris操作系统提供了pstack工具,用来打印运行程序的线程堆栈信息。RedHat公司发行的Linux操作系统(RHEL,CentOS等等)也提供了pstack工具,只要安装gdb:# yum install gdb就会把pstack也一并安装成功。首先看一下pstack:# which pstack/usr/bin/pstack# ls -lt /usr/bin/pstacklrwxrwxrwx. 1 root root 6 Nov
2020-06-18 21:11:33 1307
转载 linux 排查cpu负载过高异常
问:如何定位是哪个服务进程导致CPU过载,哪个线程导致CPU过载,哪段代码导致CPU过载?步骤一、找到最耗CPU的进程工具:top方法: 执行top -c ,显示进程运行信息列表 键入P (大写p),进程按照CPU使用率排序 图示:如上图,最耗CPU的进程PID为10765步骤二:找到最耗CPU的线程工具:top方法: top -Hp 10765 ,显示一个进程的线程运行信息列表 键入P (大写p),线程按照CPU使用率排序 图示:
2020-06-18 20:25:41 630
转载 c++基础总结
1 static(静态)变量有什么作用3个体明显的作用:1)在函数体内,静态变量具有“记忆”功能,即一个被声明为静态变量在一个函数被调用的过程中其值维持不变2)在模块内,它的作用域范围是有限制的,即如果一个变量被声明为静态的,那么该变量可以被模块内所有函数访问,但不能被模块外其他函数访问。3)内部函数应该在当前源文件中说明和定义,对于可在当前源文件以外使用的函数,应该在一个头文件中说明,使用这些函数的源文件要包含这个头文件。与局部变量和全局变量的区别:static全局变量和普通全局变量相比的区别在于
2020-05-21 20:20:11 264
原创 vs卸载不干净重新安装失败解决办法
https://blog.csdn.net/u014454538/article/details/86069806
2020-05-20 09:56:52 4899
转载 socket拆包与封包
对于基于TCP开发的通讯程序,有个很重要的问题需要解决,就是封包和拆包.下面就针对这个问题谈谈我的想法,抛砖引玉.若有不对,不妥之处,恳求大家指正.在此先谢过大家了.一.为什么基于TCP的通讯程序需要进行封包和拆包.TCP是个"流"协议,所谓流,就是没有界限的一串数据.大家可以想想河里的流水,是连成一片的,其间是没有分界线的.但一般通讯程序开发是需要定义一个个相互独立的数据包的,比如用于登陆的数据包,用于注销的数据包.由于TCP"流"的特性以及网络状况,在进行数据传输时会出现以下几种情况.假.
2020-05-09 15:37:13 541
转载 最好的6个Go语言Web框架
最好的6个Go语言Web框架翻译csdn研发技术最后发布于2017-12-07 14:26:37阅读数 170102收藏展开原文:Top 6 web frameworks for Go as of 2017作者:Edward Marinescu译者:roy译者注:本文介绍截至目前(2017年)最好的6个Go语言Web框架。以下为译文:GO 语言爱好者的最佳Web...
2020-03-23 11:50:32 1474
转载 linux: 编译hue碰到错误,郁闷了一天,在博士协助下花了45元,解决了
linux:编译hue碰到错误,郁闷了一天,在博士协助下花了45元,解决了(2014-04-25 15:22:40)转载▼ {standard input}: Assembler messages:{standard input}:468410: Warning: end of file not at end of a line; newline in...
2019-12-23 12:50:14 1076
原创 很好的面试总结 网址
https://github.com/KeKe-Li/data-structures-questions?hmsr=toutiao.io&utm_medium=toutiao.io&utm_source=toutiao.io
2019-12-18 16:11:40 144
转载 简单解决ImportError: No module named openpyxl,xlrd
简单解决ImportError: No module named openpyxl,xlrd原创aic1999发布于2018-04-05 14:10:27阅读数 28875收藏展开网上说要去site-packages目录下手动卸载了pandas包,然后再pip安装,但是!我不论是通过什么途径卸载了又安装都不行......常见库下有小东西出现这个问题,多数都...
2019-12-12 15:00:10 927
转载 Linux系统下查看版本信息
Linux系统下查看版本信息2018-03-19 16:53:10csdnszr阅读数 21852收藏更多分类专栏:Linux版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。本文链接:https://blog.csdn.net/szr4630/article/details/79613267查看Linux内...
2019-12-09 15:15:52 371
原创 很好的面试总结网址
https://github.com/KeKe-Li/data-structures-questions?hmsr=toutiao.io&utm_medium=toutiao.io&utm_source=toutiao.io
2019-11-20 10:04:50 231
原创 beego案例 百度网盘
https://www.jianshu.com/p/e927c89f0acahttps://pan.baidu.com/s/1kAtMKQ6fJtNaTOUa4kvVVw#list/path=%2F
2019-10-14 15:46:34 488
原创 golang 基础知识学习网站
https://github.com/Unknwon/the-way-to-go_ZH_CN/blob/master/eBook/directory.md
2019-10-14 15:43:52 139
转载 beego 安装并创建项目
bee安装并创建项目1.下载bee源码下载地址为:https://github.com/beego/bee2.解压将下载的文件解压到最后的目录如下(相应目录的需要事先创建好,解压生产的目录名为bee-develop,重命名为bee):../src/github.com/beego/bee3.编译安装cd C:\Go\src\github.com\beego\beego b...
2019-09-23 11:30:49 2481
原创 golang panic
/* go panic panic 表示的意思就是有些意向不到的错误发生了 通常我们常用来表示程序正常运行的过程中 不应该出现的或者我们没有处理好的错误*/package mainimport ( "os")func main() { //我们使用panic来检查预期不到的错误 panic("a problem") /* ...
2019-09-20 09:42:03 157
原创 golang range函数
/*go range 函数range 函数是个神奇而有趣的内置函数你可以使用它来遍历数组切片字典当用于遍历数组和切片的时候 range函数返回索引和元素当用于遍历字典的时候 range函数返回字典的建和值*/package mainimport ( "fmt")func main() { /* 这里我们使用range来计算一...
2019-09-20 09:41:31 1127
原创 golang sha1散列
/* go sha1 散列 sha1散列经常用来计算二进制或者大文本数据的短标识值*/package mainimport ( "crypto/sha1" "fmt")func main() { s := "sha2 this string" /* 生成一个hash的模式是sha1.New() ...
2019-09-20 09:40:57 211
原创 golang 字符串与byte切片
/* go string与byte切片之间的切换 string转换到byte数组时 每个byte保存字符串对应的字节的数值 go的字符串时utf-8编码的 每个字符长度是不确定的*/package mainimport ( "fmt")func main() { s1 := "abcd" //类型转换 b1 := []byte(s1)...
2019-09-20 09:40:09 1897
原创 golang switch
/* go switch语句 当条件判断分支太多的时候 我们会使用switch语句来优化*/package mainimport ( "fmt" "time")func main() { i := 2 switch i { case 1: fmt.Println("one") case 2: ...
2019-09-20 09:39:19 175
原创 golang url解析
/* go url解析 url提供了一种统一访问资源的方式 go里如何解析url*/package mainimport ( "fmt" "net/url" "strings")func main() { /* 我们将解析这个url 他包含了模式 验证信息 主机 端口 路径 查询参数 查询片段 ...
2019-09-20 09:38:46 1871
原创 golang 互斥
/* go互斥 上面的例子汇总 我们看过了如何在多个协程之间 原子地访问计数器 对于更复杂的例子 我们可以使用Mutex来在多个协程之间安全地访问数据*/package mainimport ( "fmt" "math/rand" "runtime" "sync" "sync/atomic" "time")func m...
2019-09-20 09:38:14 222
原创 golang 信号处理
/* go信号处理 有的时候我们希望go能够智能地处理unix信号 例如我们希望一个server接收到一个SIGTERM信号后 能够自动地停止 使用channel来处理信号*/package mainimport ( "fmt" "os" "os/signal" "syscall")func main() { //go信号...
2019-09-20 09:37:43 859
原创 golang 关闭通道
/* go 关闭通道 关闭通道的意思是该通道将不再允许写入数据 这个方法可以让管道数据的接收端知道数据已经全部发送完成了*/package mainimport ( "fmt")func main() { //当我们数据发送完成后 我们关闭jobs通道 jobs := make(chan int, 5) done := make(cha...
2019-09-20 09:37:12 766
原创 golang 写文件
/*go写入文件go将数据写入文件的方法和上面介绍过的读取文件的方法类似*/package mainimport ("bufio""fmt""io/ioutil""os")func check(e error) {if e != nil {panic(e)}}func main() {...
2019-09-20 09:36:38 192
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人