14 大爷想要时光机

尚未进行身份认证

我要认证

暂无相关简介

等级
TA的排名 8w+

pthread_cond_wait的一个例子

关于条件变量的一个例子,其中的重点是:1.pthread_cond_wait会先将调用线程放到等待条件的线程列表上,也就是说线程会阻塞,传递进去的互斥量会解锁;2.pthread_cond_wait返回时互斥量会再次锁住。带着这两个要点去看下面的程序,thread1负责打印i的值,thread2负责决定打印的条件。thread1首先锁住lock是为了保证在pthread_cond_si

2014-08-14 23:26:09

VC2005 和 VC2008 类向导脚本运行错误

环境为:WinXp + IE8 + VS2005 以及 VS2008 问题:运行类向导或者使用向导添加变量出现页面脚本运行错误。 解决方法:运行注册表编辑器regedit 第一步、 将下面内容存为一个.reg的文件,双击该文件导入注册表

2011-10-08 19:02:54

LINUX netlink机制

Netlink 是一种特殊的 socket,它是 Linux 所特有的,类似于 BSD 中的AF_ROUTE 但又远比它的功能强大,目前在最新的 Linux 内核(2.6.14)中使用netlink 进行应用与内核通信的应用很多,包括:路由 daemon(NETLINK_ROUT

2011-10-07 21:23:03

设置ubuntu 默认不启动图形界面

修改/etc/X11/default-display-manager,注释掉/usr/sbin/gdm,添加语句false。

2011-09-23 14:19:11

泛说"COM线程模型"

<br />我对“公寓 ”一词说实在一直不太搞得清楚,而企图上论坛问人的话他们总是喜欢回答:“你还是好好把《COM本质论》看一遍吧。”其实如果其中有些关键部分不理解的话,就算看上十遍也是不行的,我们需要的是一本适合自己的教材,今天偶尔发现这篇文章,所以转上来,希望读者能发表下意见。为了方便阅读,我对原文稍微进行了一些排版。<br />===== 原文 =====<br />泛说"COM线程模型"<br /> <br />作者:未知 来源:月光软件站 加入时间:2005-2-28 月光软件站<br /

2010-11-16 17:42:00

MYSQL远程连接速度慢的解决方法

 在局域网内连接其他机器的MYSQL,发现速度慢的很,不知道什么原因,总有几秒的延迟.后来在网上发现解决方法,my.ini里面添加[mysqld]skip-name-resolve skip-grant-tables这样速度就快了!skip-name-resolve 选项就能禁用DNS解析,连接速度会快很多。不过,这样的话就不能在MySQL的授权表中使用主机名了而只能用ip格式。若使用–ski

2009-08-27 11:47:00

MMORPG开发入门

 原文出处:A Beginners Guide to Creating a MMORPG译者序:这是一篇讲解如何开发一款MMORPG的入门文章,作者本人也是一款游戏的开发者,文中的内容源于实践,有很高的参考价值。很多人都想拥有自己的游戏,这篇文章对那些想自己开发游戏的人来说可能是一纸福音,也可能是一盆冷水。无论如何,开发游戏都不是一件简单的事情。以下是翻译正

2009-07-19 15:28:00

一日一练(2)

 #include #include using namespace std;#define ARRAY_SIZE(array) (sizeof(array) / sizeof(*array))int main(){ int iArray[] = {1, 2, 3, 4, 5, 6, 99}; nth_element(iArray, iArray + ARR

2009-07-14 22:48:00

一日一练(1)

 #include #include #include #include #include using namespace std;struct fun_int_to_str{ string operator()(int iPara) { char szBuf[32] = {0}; itoa(iPara, szBu

2009-07-12 20:03:00

IOCP初探

  这个是第二个版本了,这里我用了AcceptEx这个函数,使得接收连接也可以进行重叠操作了,我暂时开了2个工作线程,你可以看到,当GetQueuedCompletionStatus需要额外的线程来处理客户数据的时候,第二个工作线程就会被唤醒。  #include #include #include #include #include #include #inc

2009-04-12 23:58:00

基于WSAEventSelect模型的TCP服务器实现

 怎么感觉标题很学术的样子。。。上次那个重叠IO的事件模型搞完之后,就觉得TCP是很不错的协议,可以将重点转移到对客户端的管理之上,而不必为了数据报的丢失和客户端keepalive的问题而绞尽脑汁(之前我做了个简单的聊天软件,面对的就是这种问题)。  WSAEventSelect是基于事件通知的,我觉得没有比这个模型更加简单实用了,编译环境:vc++ 6.0,代码如下: #include

2009-04-10 17:24:00

几个简单排序,外加一个快速排序

 #include #include using namespace std;#define _SWAP(x, y) if (x == y){}else x ^= y ^= x ^= y//插入排序 void Insert_sort(int *begin, int *end){ int n; int *p; for (int *pdwCur

2009-01-23 21:29:00

基于Overlapped IO的TCP服务器模型

   用了一个工作线程,可管理64个TCP连接。 // OverlappedIO.cpp : Defines the entry point for the console application.//#include "stdafx.h"using std::map;#define DATA_BUFSIZE 4096DWORD g_udwIndexEvent = 0;

2009-01-17 22:38:00

两个模板元编程求阶乘的例子

 从网上偶然看来的 #include using namespace std;templateclass fac{public: enum{var = n * fac::var};};template<>class fac{public: enum{var = 1};};int main(){ cout::var<

2009-01-17 17:21:00

关于map::erase

 用map::erase的时候要注意,这个函数是有版本差异的,vc下使用的stl是P.J. Plauger stl版本,dev下使用的是sgi stl。这两个版本的map::erase有所区别,前者有返回值,后者没有返回值,标准库中提供的接口是没有返回值的,所以对于P.J. Plauger stl版本的使用者,在使用这个函数时,为了能保证移植性,最好能写成以下形式: #include

2009-01-16 20:46:00

双向链表

#ifndef _LIST_H_#define _LIST_H_#include #define _ASSERT_RET(cond, ret) if (!(cond)){printf("file: %s,line: %d/n", __FILE__, __LINE__);return ret;}else{}typedef struct _VALUE_{ void *pvDa

2009-01-14 21:17:00

关于win32sdk的timer

  windows程序设计上的一段,看看吧:系统和定时器Windows定时器是PC硬件和ROM BIOS架构下之定时器一种相对简单的扩充。回到Windows以前的MS-DOS程序写作环境下,应用程序能够通过拦截者称为timer tick的BIOS中断来实作时钟或定时器。一些为MS-DOS编写的程序自己拦截这个硬件中断以实作时钟和定时器。这些中断每54.915毫秒产生一次,或者大约每秒1

2009-01-08 13:56:00

如何看待基础分析与技术分析的区别

  面对投资市场,我们可以选择的分析方法只有有两种:基础分析和技术分析。下面我就简单的来分析一下以上两种方法的优缺点。(1)        基础分析:就是把市场一定时期有关所有信息综合在一起,通过科学的分析方法,找出市场的内在价值,并与目前市场实际价值作比较,从而得出最终结论。基础分析属于宏观经济学范畴,最大优点是其科学性与严谨性,因果关系明确。但在实际的运用中对于绝大多数投资者来讲缺乏可操作

2008-12-10 19:00:00

写的几个小玩意

 v/:* {behavior:url(#default#VML);}o/:* {behavior:url(#default#VML);}w/:* {behavior:url(#default#VML);}.shape {behavior:url(#default#VML);} Normal 0 7.8 磅 0 2

2008-09-28 20:02:00

EPOLL应用详解

在linux的网络编程中,很长的时间都在使用select来做事件触发。在linux新的内核中,有了一种替换它的机制,就是epoll。相比于select,epoll最大的好处在于它不会随着监听fd数目的增长而降低效率。因为在内核中的select实现中,它是采用轮询来处理的,轮询的fd数目越多,自然耗时越多。并且,在linux/posix_types.h头文件有这样的声明:#define __

2008-07-15 12:41:00

查看更多

勋章 我的勋章
    暂无奖章