Albert World


  • 首页

  • 归档

  • 标签

  • 分类

  • 工具

  • 关于

  • 搜索

linux环境下服务器程序的查看与gdb调试

发表于 2019-01-11 | 更新于 2019-11-17 | 分类于 gdb |
热度 ℃
  |   字数统计: 1,214(字)   |   阅读时长: 5(分)

前言

这一篇主要是记录下调试服务器程序常用的命令,内容很简单,但是长时间不用很容易记混,因为游戏服务器也不是天天宕机,所以当有一天突然挂掉需要调试的时候,如果记不清调试命令很容易耽误时间,有好几次我就把gdb gameserver core记成了gdb core gameserver,所以干脆把这些内容统计到一起,查询的时候也方便。

阅读全文 »

抓扑克牌风格的插入排序

发表于 2018-12-04 | 更新于 2019-11-17 | 分类于 Sort |
热度 ℃
  |   字数统计: 1,645(字)   |   阅读时长: 6(分)

前言

上次聊到了快速排序,我们说到快排这个名字是非常抽象的,究竟什么是快排,从名字上我们无从得知,或许叫二分排序都比快速排序要形象的多,可是这又和归并排序重复了,所以我们还是不要在意快排的名字了,接下来看一下今天的插入排序,这里指的是简单的插入排序。

阅读全文 »

Mysql中使用select into语句给变量赋值没有匹配记录时的结果

发表于 2018-11-17 | 更新于 2019-11-17 | 分类于 Mysql |
热度 ℃
  |   字数统计: 945(字)   |   阅读时长: 4(分)

前言

对select into语句感兴趣是因为看了项目中的一个存储过程引起的,在程序运行之前看了存储过程的逻辑,本以为没有数据时会报错,结果程序却正常运行,这说明我对select into语句理解的问题,同时也暴露了一个知识盲点,所以写了个小例子测试一下,并把测试的过程记录方便日后查找。

阅读全文 »

Lua中关于table对象引用传递的注意事项

发表于 2018-09-18 | 更新于 2019-11-17 | 分类于 Lua |
热度 ℃
  |   字数统计: 1,588(字)   |   阅读时长: 7(分)

前言

最近写了挺长一段时间的Lua,发现Lua这个语言真的是很随意,产生这种感觉的根本原因应该是它把“函数” 作为了“第一类值”,也就是说函数也可以作为变量的“值”,这使得Lua可以随处定义函数,进而改变逻辑的走向,整个流程任你摆布。

阅读全文 »

unique_ptr浅析

发表于 2018-09-12 | 更新于 2019-11-17 | 分类于 C/C++ |
热度 ℃
  |   字数统计: 3,217(字)   |   阅读时长: 13(分)

前言

unique_ptr这个指针是C++11标准时被引入标准库的,有一种说法称它是boost::scoped_ptr的一个分身,并且它在C++11的时候“转正”了,但是scoped_ptr还被留在boost库中,看来没有转正的机会了,不过unique_ptr与scoped_ptr确实很像,unique_ptr只比scoped_ptr多了一个移动语义,可以通过std::move()函数来转移内部对象的所有权。

阅读全文 »

weak_ptr浅析

发表于 2018-09-01 | 更新于 2019-11-17 | 分类于 C/C++ |
热度 ℃
  |   字数统计: 1,980(字)   |   阅读时长: 8(分)

前言

weak_ptr这个指针天生一副“小弟”的模样,也是在C++11的时候引入的标准库,它的出现完全是为了弥补它老大shared_ptr天生有缺陷的问题,其实相比于上一代的智能指针auto_ptr来说,新进老大shared_ptr可以说近乎完美,但是通过引用计数实现的它,虽然解决了指针独占的问题,但也引来了引用成环的问题,这种问题靠它自己是没办法解决的,所以在C++11的时候将shared_ptr和weak_ptr一起引入了标准库,用来解决循环引用的问题。

阅读全文 »

shared_ptr浅析

发表于 2018-08-15 | 更新于 2019-11-17 | 分类于 C/C++ |
热度 ℃
  |   字数统计: 3,222(字)   |   阅读时长: 13(分)

前言

这个指针近乎完美,原来出现在boost库中,C++11时引入了标准库,解决了auto_ptr对内部对象独占的机制,转而采用引用计数的方式,每增加一次赋值,则引用计数加1,每析构一个智能指针对象,则引用计数减1,当引用计数为1时销毁智能指针对象的同时,也析构内部对象。这种采用引用计数方式避免了对象所有权转移,所以作为函数返回值,函数参数,容器的元素都不会有问题,但是因为引用计数的加入,相应的会带来对引用计数维护的开销。

阅读全文 »

auto_ptr浅析

发表于 2018-08-08 | 更新于 2019-11-17 | 分类于 C/C++ |
热度 ℃
  |   字数统计: 3,584(字)   |   阅读时长: 14(分)

前言

之前简单的列举了一下各种智能指针的特点,其中提到了这个历经沧桑的指针,C++98中引入,C++11中弃用,C++17中被移除,弃用的原因主要是使用不当容易造成内存崩溃,不能够作为函数的返回值和函数的参数,也不能在容器中保存auto_ptr。其实说这个指针“不能够作为函数的返回值和函数的参数,也不能在容器中保存”,这个结论过于武断了,经过一系列的测试后发现,原来真正的结论不应该说“不能”,准确来说是“不建议”。

阅读全文 »

智能指针分类及简单特性

发表于 2018-08-06 | 更新于 2019-11-17 | 分类于 C/C++ |
热度 ℃
  |   字数统计: 801(字)   |   阅读时长: 3(分)

前言

智能指针的种类繁多,我听说过的就有这些:auto_ptr、shared_ptr、weak_ptr、unique_ptr、scoped_ptr、scoped_array、shared_array、intrusive_ptr,这些智能指针看起来种类繁多,但实际上常用的就只有两三种,他们是shared_ptr、weak_ptr和unique_ptr,先简单了解一下这几个指针,后续再列出具体的例子和选择标准。

阅读全文 »

简述TCP三次握手和四次挥手流程

发表于 2018-07-11 | 更新于 2020-02-26 | 分类于 Network |
热度 ℃
  |   字数统计: 1,486(字)   |   阅读时长: 5(分)

前言

关于TCP的连接过程,很多从事程序开发的小伙伴应该都听过三次握手,可这三次握手的细节还是有很多人不太清楚的,特别是有些参数记不清楚,我也经常弄错,所以我根据自己的理解画了两张图,将TCP连接和断开的流程简单记录一下,以方便后续查找复习之用。

阅读全文 »
1…20212223
Albert Shi

Albert Shi

阳光总在风雨后,大雨过后是冰雹

225 日志
36 分类
539 标签
RSS
GitHub 简书 StackOverflow CSDN 知乎 墨天轮
Links
  • Web前端导航
  • 文字编码导航
  • 在线代码编译
  • 在线工具集合
  • 在线教程集合
© 2018 - 2023 Albert Shi
Hexo 强力驱动
主题 - NexT.Mist
Unless otherwise specified, this blog is licensed under a CC BY-NC-ND 4.0 International License.
 京公网安备11010102007022号     冀 ICP 备 2022029255 号 - 1.