lichenghui's blog

Pursue excellence, and success will follow!


  • Home

  • Categories

  • Tags

  • Archives

  • About

总结——线程同步

Posted on 2018-03-16 | In 学习笔记 | Visitors:

概述

最近第二遍啃APUE的11章,与第一次看天书的感觉不同。收获颇多,醍醐灌顶。
总结一下线程间的同步方式:互斥量,条件变量,读写锁,自旋锁,屏障。

Read more »

深入分析C++中的深拷贝与浅拷贝

Posted on 2018-03-13 | In 语言 | Visitors:

前些日子写过一篇C++拷贝控制与资源管理的文章,是看过第一遍《C++ primer》之后的总结与分析。最近被问到类似的问题,还是答不上来。所以,最后,知菜后勇。又google了好多博客,体会颇深,故作此篇,共勉。

Read more »

回文子序列问题

Posted on 2018-03-09 | In ACM | Visitors:

概述

回文串就是正着读与反着读都一样的字符串,比如aba,a,abcba。
回文子串是指一个字符串中,连续的n个字符满足回文,比如ceabade,aba就是一个回文子串。
回文子序列是指一个字符串中,不一定连续但是其先后顺序不改变的满足回文特性的序列,比如ceabade,eabae就是一个回文子序列,且是最长的回文子序列。

Read more »

C++虚函数表解析

Posted on 2018-03-08 | In 语言 | Visitors:

概述

为了实现C++的多态,C++使用了一种动态绑定技术,该技术的核心就是虚函数表。
多态即使用同一段代码可以实现不同的行为;动态绑定即使用静态类型是基类的指针或引用调用虚函数,根据其动态类型的不同会导致调用不同版本(基类版本或派生类版本)的虚函数从而产生不同的行为。
下面剖析一下其中的奥秘。

Read more »

二分查找中的一些问题

Posted on 2018-03-07 | In ACM | Visitors:

前xia言che

今天是2018年3月4号,马上就春招了,不对,准确的说是春招已经开始了,简历还没有投,最近在赶一个项目,想把它写到上面,目前简历的开发经验还是空白。虽然三年下来课设没少做,代码也没少敲(大概5w行左右,其实代码量还是远远不够的);虽然课设大多都是优秀(其实做的真的菜),所以导致今天这个尴尬的局面。今天刷剑指offer时看到二分的题目,也是困扰本ACMer(实则菜的抠脚的那种)多年的二分边界问题终于想解决下,所以google一番后,发现貌似也没有想象的那么难,所以忙里偷闲的来总结下。下面开始正文。

Read more »

关于死锁的深入分析

Posted on 2018-03-04 | In 操作系统 | Visitors:

概述

如果一个进程集合中的每个进程都在等待只能由该进程集合中的其他进程才能引发的事件,那么该进程集合就是死锁的。简单的说就是进程之间互相占有对方需要的资源。由于所有的进程都在等待,所以没有一个进程能引发可以唤醒该进程集合中的其他进程的事件。这样,所有的进程只好无限期等待下去。

Read more »

C++中的拷贝控制与资源管理

Posted on 2018-03-02 | In 语言 | Visitors:

概述

管理类外资源的类必须定义拷贝控制成员,这种类需要通过析构函数来释放对象所分配的资源。一旦一个类需要析构函数,那么它也几乎需要拷贝构造函数和拷贝赋值运算符。
为了定义这些成员,首先必须确定此类型对象的拷贝语义。一般来说有两种选择:可以定义拷贝操作使类的行为看起来像一个值或者一个指针。

Read more »

初识HTTP事务

Posted on 2018-02-27 | In 网络 | Visitors:

概述

web客户端和服务器之间的交互用的是一个基于文本的应用级协议——HTTP(超文本传输协议)。一个web客户端打开一个到服务器的因特网连接,并且请求某些内容。服务器响应所请求的内容,然后关闭连接。浏览器读取这些内容,并把它显示在屏幕上。

Read more »

select函数和poll函数

Posted on 2018-02-24 | In 学习笔记 | Visitors:

IO多路复用

select,poll,epoll都是linux下的IO多路复用的技术。所谓的IO多路复用就是指同时可以检测多个描述符,在指定时间内有描述符产生指定事件则返回,否则阻塞指定时间。

Read more »

C++中的强制类型转换

Posted on 2018-02-20 | In 语言 | Visitors:

一个命名的强制类型转换具有如下形式:
cast-name<type>(expression);
其中,type是转换的目标类型而expression是要转换的值。如果type是引用类型,则结果是左值。cast-name是static_cast,dynamic_cast,const_cast和reinterpret_cast中的一种。

Read more »

1…345…9
lichenghui

lichenghui

stay foolish, stay hungry

81 posts
11 categories
84 tags
MyGitHub
© 2022 lichenghui
Powered by Hexo
|
Theme — NexT.Gemini v5.1.3