- 博客(12)
- 资源 (10)
- 问答 (1)
- 收藏
- 关注
转载 关于C++中如何判断文件,目录存在的若干方法
在我们平时的编程时,经常需要判断文件或者目录是否存在,相对来说判断文件的存在性比较简单,目录则比较复杂。下面就详细的介绍几种方法。 首先关于判断文件的存在性:一、ifstream在C++中,可以利用ifstream文件输入流,当我们直接使用ifstream来创建文件输入流的时候,如果文件不存在则流创建失败。ifstream fin("hello.txt");if (
2016-05-30 14:56:23 630
转载 线程同步之利器(1)——可递归锁与非递归锁
z转载地址:http://blog.csdn.net/zouxinfox/article/details/5838861概述最常见的进程/线程的同步方法有互斥锁(或称互斥量Mutex),读写锁(rdlock),条件变量(cond),信号量(Semophore)等。在Windows系统中,临界区(Critical Section)和事件对象(Event)也是常用的同步方法。 简单
2016-05-15 20:32:57 480
转载 线程同步之利器(2)——区域锁(Scoped locking)
什么是区域锁确切的说,区域锁(Scoped locking)不是一种锁的类型,而是一种锁的使用模式(pattern)。这个名词是Douglas C. Schmidt于1998年在其论文Scoped Locking提出,并在ACE框架里面使用。但作为一种设计思想,这种锁模式应该在更早之前就被业界广泛使用了。区域锁实际上是RAII模式在锁上面的具体应用。RAII(Resource Acquis
2016-05-14 22:24:34 612
转载 C++之RAII惯用法
转载地址:http://blog.csdn.net/hunter8777/article/details/6327704C++中的RAII全称是“Resource acquisition is initialization”,直译为“资源获取就是初始化”。但是这翻译并没有显示出这个惯用法的真正内涵。RAII的好处在于它提供了一种资源自动管理的方式,当产生异常、回滚等现象时,RAII可以正确
2016-05-14 21:57:34 559
转载 IO - 同步,异步,阻塞,非阻塞
转载地址:http://blog.csdn.net/historyasamirror/article/details/5778378当你发现自己最受欢迎的一篇blog其实大错特错时,这绝对不是一件让人愉悦的事。《 IO - 同步,异步,阻塞,非阻塞》是我在开始学习epoll和libevent的时候写的,主要的思路来自于文中的那篇link。写完之后发现很多人都很喜欢,我还是非常开心的,也
2016-05-14 20:55:05 244
转载 reactor和proactor模式
转载地址:http://blog.csdn.net/caiwenfeng_for_23/article/details/8458299首先分享一下,我在网上看到的两篇不错的文章:正是这两篇文章才理解了reactor和proactor模式; Reactor模式,或者叫反应器模式高性能IO设计的Reactor和Proactor模式 首先就第一篇《Reactor模式,或者叫反应器模式
2016-05-14 20:53:21 277
转载 字节对齐
我们知道的当一个结构体,如果我们想知道他占多少内存空间的话我们可以利用sizeof()来查看,但是有时候sizeof()得出的结构竟然和我们想象的不一样,这和编译器有很大的关系。编译器有自己的字节对齐机制,他为了某些原因,在内存上进行了一些调整。和填充,导致得到了与我们想法不一样的结果。虽然vc字节对齐网上有很多资料,但是呢,下面我就说说自己的理解,自己对这套规则的记忆方法。采用字节对
2016-05-14 17:32:01 316
转载 I/O并发模式:Reactor模式与Proactor模式 总价
首先最好拜读下《Unix网络编程第一卷:套接口API》第6章关于I/O模型的讲解非常经典,首先搞清楚何为阻塞和非阻塞,何为同步和异步。Reactor模式Proactor介绍和应用实例高性能IO设计的Reactor和Proactor模式高性能I/O设计模式Reactor和ProactorLinux——epollLinux下tcp并发服务器的几种设计的模式套路 《高性能IO
2016-05-14 17:25:29 610
转载 readv()和writev()函数
read()和write()系统调用每次在文件和进程的地址空间之间传送一块连续的数据。但是,应用有时也需要将分散在内存多处地方的数据连续写到文件中,或者反之。在这种情况下,如果要从文件中读一片连续的数据至进程的不同区域,使用read()则要么一次将它们读至一个较大的缓冲区中,然后将它们分成若干部分复制到不同的区域,要么调用read()若干次分批将它们读至不同区域。同样,如果想将程序中不同区域的数据
2016-05-14 17:19:34 4868
转载 epoll使用详解(精髓)
epoll - I/O event notification facility在linux的网络编程中,很长的时间都在使用select来做事件触发。在linux新的内核中,有了一种替换它的机制,就是epoll。相比于select,epoll最大的好处在于它不会随着监听fd数目的增长而降低效率。因为在内核中的select实现中,它是采用轮询来处理的,轮询的fd数目越多,自然耗时越多。并且
2016-05-14 17:12:57 323
转载 守护进程的创建方法和步骤
http://blog.chinaunix.net/uid-25365622-id-3055635.html概念: 守护进程(Daemon)是运行在后台的一种特殊进程。它独立于控制终端并且周期性地执行某种任务或等待处理某些发生的事件。守护进程是一种很有用的进程。Linux的大多数服务器就是用守护进程实现的。比如,Internet服务器inetd,Web服务器httpd等。同时
2016-05-10 10:42:30 326
转载 scanf 用法及陷阱(转)
转载地址:http://www.cnblogs.com/lovevivi/archive/2013/03/04/2942492.html函数名: scanf 功 能: 执行格式化输入 用 法: int scanf(char *format[,argument,...]);scanf()函数是通用终端格式化输入函数,它从标准输入设备(键盘) 读取输入的信息。可以读
2016-05-09 15:47:45 411
C++析构函数是怎么出来的?
2015-12-28
TA创建的收藏夹 TA关注的收藏夹
TA关注的人