随笔分类 -  转载

摘要:最近发现有些朋友一老问IF命令的用法,IF命令个人觉得很简单,所以就一直没把发放到新手教学贴里说,现在我给补上一文,希望对各位"非常BAT的"新手朋友们有所帮助.现在开始:在CMD使用IF/?打开IF的系统帮助(自己看我就不全部列出来了),IF[NOT]ERRORLEVEL number commandIF[NOT]string1==string2 commandIF[NOT]EXIST filename command首先来讲第一种用法IF[NOT]ERRORLEVEL number command这个用法的基本做用是判断上一条命令执行结果的代码,以决定下一个步骤.一般上 阅读全文
posted @ 2012-08-16 22:39 dzqabc 阅读(1503) 评论(0) 推荐(0) 编辑
摘要:引子 “请写一个Singleton。”面试官微笑着和我说。 “这可真简单。”我心里想着,并在白板上写下了下面的Singleton实现: 1 class Singleton 2 { 3 public: 4 static Singleton& Instance() 5 { 6 static Singleton singleton; 7 ... 阅读全文
posted @ 2012-07-20 01:00 dzqabc 阅读(292) 评论(1) 推荐(0) 编辑
摘要:定时器的实现 通过Reactor机制,还可以很容易的实现定时器的功能,使用方式如下。 编写一个事件反应器,重载handle_timeout()方法,该方法是定时器的触发时间到时,会自动触发该方法。 通过Reactor的schedule_timer()方法注册定时器。 启动reacotr的handle_events()事件分发循环。 当不想使用定时器时,可以通过Reactor的... 阅读全文
posted @ 2012-07-16 22:51 dzqabc 阅读(392) 评论(0) 推荐(0) 编辑
摘要:在服务器端使用Reactor框架 使用Reactor框架的服务器端结构如下: 服务器端注册两种事件处理器,ClientAcceptor和ClientService ,ClientService类负责和客户端的通信,每一个ClientService对象对应一个客户端的Socket连接。 ClientAcceptor专门负责被动接受客户端的连接,并创建ClientService对象。这样,在一个... 阅读全文
posted @ 2012-07-16 22:50 dzqabc 阅读(503) 评论(0) 推荐(0) 编辑
摘要:在Socket编程中,常见的事件就是"读就绪","写就绪",通过对这两个事件的捕获分发,可以实现Socket中的异步操作。 Socket编程中的事件处理器 在前面我们已经介绍过,在ACE反应器框架中,任何都必须派生自ACE_Event_Handler类,并通过重载其相应会调事件处理函数来实现相应的回调处理的。在Socket编程中,我们通常需要重载的函数有 handle_input()当I... 阅读全文
posted @ 2012-07-16 22:49 dzqabc 阅读(521) 评论(0) 推荐(0) 编辑
摘要:1.ACE反应器框架简介 反应器(Reactor):用于事件多路分离和分派的体系结构模式 通常的,对一个文件描述符指定的文件或设备, 有两种工作方式: 阻塞与非阻塞。所谓阻塞方式的意思是指, 当试图对该文件描述符进行读写时, 如果当时没有东西可读,或者暂时不可写, 程序就进入等待状态, 直到有东西可读或者可写为止。而对于非阻塞状态, 如果没有东西可读, 或者不可写, 读写函数马上返回, 而不... 阅读全文
posted @ 2012-07-16 22:48 dzqabc 阅读(368) 评论(0) 推荐(0) 编辑
摘要:net use \\ip\ipc$ " " /user:" " 建立IPC空链接net use \\ip\ipc$ "密码" /user:"用户名" 建立IPC非空链接net use h: \\ip\c$ "密码" /user:"用户名" 直接登陆后映射对方C:到本地为H:net use h: \\ip\c$ 登陆后映射对方C:到本地为H:net use \\ip\ipc$ /del 删除IPC链接net use h: /del 删除映射对方到本地的为H:的映射net use 阅读全文
posted @ 2012-07-12 23:34 dzqabc 阅读(327) 评论(0) 推荐(0) 编辑
摘要:在每个进程退出的时候,内核释放该进程所有的资源,包括打开的文件,占用的内存等.但是仍然为其保留一定的信息(包括进程号the process ID,退出状态the termination status of the process,运行时间the amount of CPU time taken by the process等),直到父进程通过wait / waitpid来取时才释放,此时该进程便成为僵尸进程。1.什么是僵尸进程? UNIX 系统中,一个进程结束了,但是他的父进程没有等待(调用wait / waitpid)他,而父进程还没有结束,那么他将变成一个僵尸进程. 如果该进程的父进程已. 阅读全文
posted @ 2012-07-12 23:21 dzqabc 阅读(597) 评论(0) 推荐(0) 编辑
摘要:错误信息为:一个实例化的逻辑错误导致程序中止.在what()函数中不能使用NULL来构造basic_string的对象.错误 用法的演示:============================#include <string>using namespace std;void main(void){//string a(NULL);//错误用法//string b = NULL;//错误用法string a("");//正确用法string b = "";//正确用法string c;//正确用法a = "aaa";b = 阅读全文
posted @ 2012-06-29 23:10 dzqabc 阅读(3391) 评论(0) 推荐(0) 编辑
摘要:事件是用来描述网页中某一特定有趣时刻的,众所周知事件通常是在由用户和浏览器进行 交互时触发,其实不然,通过Javascript可以在任何时间触发特定的事件,并且这些事件与浏览器创建的事件是相同的。这就意味着会有适当的事件冒 泡,并且浏览器会执行分配的事件处理程序。这种能力在测试web应用程序的时候,是非常有用的,在DOM 3级规范中提供了方法来模拟特定的事件,IE9 chrome FF Opera 和 Safari都支持这样的方式,在IE8及以前的办法的IE浏览器有他自己的方式来模拟事件a)Dom 事件模拟 可以通过document上的createEvent()方法,在任何时候创建事件对... 阅读全文
posted @ 2012-06-26 23:44 dzqabc 阅读(465) 评论(0) 推荐(0) 编辑
摘要:C++为类中提供类成员的初始化列表类对象的构造顺序是这样的:1.分配内存,调用构造函数时,隐式/显示的初始化各数据成员2.进入构造函数后在构造函数中执行一般计算 1.类里面的任何成员变量在定义时是不能初始化的。 2.一般的数据成员可以在构造函数中初始化。 3.const数据成员必须在构造函数的初始化列表中初始化。 4.static要在类的定义外面初始化。 5.数组成员是不能在初始化列表里初始化的。 6.不能给数组指定明显的初始化。 这6条一起,说明了一个问题:C++里面是不能定义常量数组的!因为3和5的矛盾。这个事情似乎说不过去啊?没有办法,就只好转而求助于静态数据成员。到此,我的问题解决。. 阅读全文
posted @ 2012-05-27 00:37 dzqabc 阅读(468) 评论(0) 推荐(0) 编辑
摘要:1.例子,查找不以baidu开头的字符串。baidu.comsina.com.cn正则:^(?!baidu).*$ 匹配结果就是第2行,也就是第1行被排除了这里使用了零宽度断言(?!exp),注意,我们有一个向前查找的语法(也叫顺序环视) (?=exp)(?=exp) 会查找exp之前的【位置】如果将等号换成感叹号,就变成了否定语义,也就是说查找的位置的后面不能是exp一般情况下?!要与特定的锚点相结合,例如^行开头或者$行结尾,那么上面的例子的意思如下:^(?!baidu).*$ 先匹配一个行开头的位置,并且要求接下来的位置的后面不是baidu这个字符串。这样由于第一行^之后的位置后面是ba 阅读全文
posted @ 2012-05-13 23:51 dzqabc 阅读(7248) 评论(0) 推荐(0) 编辑
摘要:为什么要有TLS?原因在于,进程中的全局变量与函数内定义的静态(static)变 量,是各个线程都可以访问的共享变量。在一个线程修改的内存内容,对所有线程都生效。这是一个优点也是一个缺点。说它是优点,线程的数据交换变得非常快 捷。说它是缺点,一个线程死掉了,其它线程也性命不保; 多个线程访问共享数据,需要昂贵的同步开销,也容易造成同步相关的BUG。 如果需要在一个线程内部的各个函数调用都能访问、但其它线程不能访问的变量(被称为static memory local to a thread 线程局部静态变量),就需要新的机制来实现。这就是TLS。 线程局部存储在不同的平台有不同的实现,可移植.. 阅读全文
posted @ 2012-05-13 22:41 dzqabc 阅读(1606) 评论(0) 推荐(0) 编辑
摘要:1. 相关函数 #include <pthread.h> pthread_cond_t cond = PTHREAD_COND_INITIALIZER; int pthread_cond_init(pthread_cond_t *cond, pthread_condattr_t *cond_attr); int pthread_cond_signal(pthread_cond_t *cond); int pthread_cond_broadcast(pthread_cond_t *cond); int pthread_cond_wait(pthread_cond_t *cond, 阅读全文
posted @ 2012-05-13 22:27 dzqabc 阅读(413) 评论(0) 推荐(0) 编辑
摘要:1、修改Oracle最大连接数的方法 a、以sysdba身份登陆PL/SQL 或者 Worksheet b、查询目前连接数 show parameter processes; c、更改系统连接数 alter system set processes=1000 scope=spfile; d、创建pf... 阅读全文
posted @ 2012-05-03 00:07 dzqabc 阅读(1091) 评论(1) 推荐(0) 编辑
摘要:一般ORA-12516有两个原因,一个是session数不够再有一个就是客户端和服务端建立连接的时候不稳定所引起的,我现在的服务端是oracle10g r2,而客户端是oracle11i,结果当连接数大的时候,就会报ora-12516的错误解决方法:1.针对第一个原因就是修改连接数的限制 a、以sysdba身份登陆PL/SQL 或者 Worksheet b、查询目前连接数 show parameter processes; c、更改系统连接数 alter system set processes=1000 scope=spfile; d、创建pfile create pfile from sp 阅读全文
posted @ 2012-05-03 00:05 dzqabc 阅读(41281) 评论(0) 推荐(0) 编辑
摘要:条件变量函数操作相关函数说明初始化条件变量pthread_cond_init 语法基于条件变量阻塞pthread_cond_wait 语法解除阻塞特定线程pthread_cond_signal 语法在指定的时间之前阻塞pthread_cond_timedwait 语法在指定的时间间隔内阻塞pthread_cond_reltimedwait_np 语法解除阻塞所有线程pthread_cond_broadcast 语法销毁条件变量状态pthread_cond_destroy 语法初始化条件变量使用 pthread_cond_init(3C) 可以将 cv 所指示的条件变量初始化为其缺省值,或者指定 阅读全文
posted @ 2012-05-02 07:54 dzqabc 阅读(5084) 评论(0) 推荐(2) 编辑
摘要:Source Insight实质上是一个支持多种开发语言(java,c ,c++等等)的编辑器,只不过由于其查找、定位、彩色显示等功能的强大,常被我们当成源代码阅读工具使用。1. SMART TAB的用法. 解决自动缩进.新开一个PROJECT后,点 Options->Document Optio... 阅读全文
posted @ 2012-03-18 00:46 dzqabc 阅读(704) 评论(0) 推荐(0) 编辑
摘要:按照教科书上的定义,进程是资源管理的最小单位,线程是程序执行的最小单位。在操作系统设计上,从进程演化出线程,最主要的目的就是更好的支持SMP以及减小(进程/线程)上下文切换开销。 一.基础知识:线程和进程 按照教科书上的定义,进程是资源管理的最小单位,线程是程序执行的最小单位。在操作系统设计上,从进程演化出线程,最主要的目的就是更好的支持SMP以及减小(进程/线程)上下文切换开销。 无... 阅读全文
posted @ 2012-02-16 22:40 dzqabc 阅读(601) 评论(0) 推荐(0) 编辑
摘要:1.微软针对这个问题发布了一个补丁包。下载地址 2.下载之后是一个源码包,解压,编译,生成一个FileTool.dll。 3.将生成的dll拷贝到VC安装目录的“\Common\MSDev98\AddIns\”文件夹下。 4.在AddIns目录下执行命令“regsvr32 File Tool.dll”手动注册dll文件。 5.运行VC6,右击工具栏,选择“自定义…>附加项和宏文件”,选择F... 阅读全文
posted @ 2012-02-16 22:33 dzqabc 阅读(416) 评论(0) 推荐(0) 编辑