blogdown整理
文章平均质量分 87
blogdown
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
windows线程同步的总结-------四种实现的方法blogdown整理
windows线程同步的总结-------四种实现的方法blogdown整理前面的关于线程同步的两种方法都有讲解:基于事件对象的线程同步--------同步的另外一种实现方法前面的一个帖子说了如何实现线程的同步,利用的是信号量来实现,关键的函数是:CreateMutex和ReleaseMutex函数。下面,看看事件方式如何实现同步吧!代码:#include原创 2012-11-28 21:02:56 · 398 阅读 · 0 评论 -
C++多线程(五)
C++多线程(五) 多线程之等待函数一 等待函数1)函数列举Wait functionDescriptionMsgWaitForMultipleObjectsWaits until one or all of the specified objects are in the signaled state or the time-out原创 2012-11-29 19:28:02 · 401 阅读 · 0 评论 -
C++多线程(七)
C++多线程(七)多线程同步之Semaphore (主要用来解决生产者/消费者问题)一 信标Semaphore信标内核对象用于对资源进行计数。它们与所有内核对象一样,包含一个使用数量,但是它们也包含另外两个带符号的3 2位值,一个是最大资源数量,一个是当前资源数量。最大资源数量用于标识信标能够控制的资源的最大数量,而当前资源数量则用于标识当前可以使用的资源的数量。为了正原创 2012-11-29 19:28:58 · 364 阅读 · 0 评论 -
windows核心编程--线程
进程是由两个部分构成的,一个是进程内核对象,另一个是地址空间。同样,线程也是由两个部分组成的:• 一个是线程的内核对象,操作系统用它来对线程实施管理。内核对象也是系统用来存放线程统计信息的地方。• 另一个是线程堆栈,它用于维护线程在执行代码时需要的所有函数参数和局部变量进程从来不执行任何东西,它只是线程的容器。线程总是在某个进程环境中创建的,而且它的整个寿命期都在该进程中。如果原创 2012-11-29 19:31:47 · 304 阅读 · 0 评论 -
windows核心编程--线程高级
暂停和恢复线程的运行在线程内核对象的内部有一个值,用于指明线程的暂停计数。当调用C r e a t e P r o c e s s或C r e a t e T h r e a d函数时,就创建了线程的内核对象,并且它的暂停计数被初始化为1。当线程的暂停计数是0的时候,除非线程正在等待其他某种事情的发生,否则该线程就处于可调度状态。恢复线程,可以用将调用R e s u m e T h原创 2012-11-29 19:32:18 · 310 阅读 · 0 评论 -
C++ 多线程编程总结
在开发C++程序时,一般在吞吐量、并发、实时性上有较高的要求。设计C++程序时,总结起来可以从如下几点提高效率: 并发 异步 缓存 下面将我平常工作中遇到一些问题例举一二,其设计思想无非以上三点。1任务队列1.1 以生产者-消费者模型设计任务队列 生产者-消费者模型是人们非常熟悉的模型,比如在某个服务器程序中,当User数据被逻辑模块修改后原创 2012-11-29 19:35:44 · 322 阅读 · 0 评论 -
C++11 多线程
C++11开始支持多线程编程,之前多线程编程都需要系统的支持,在不同的系统下创建线程需要不同的API如pthread_create(),Createthread(),beginthread()等,使用起来都比较复杂,C++11提供了新头文件、、、等用于支持多线程。使用C++11开启一个线程是比较简单的,下面来看一个简单的例子:#include #include原创 2012-12-23 17:57:11 · 331 阅读 · 0 评论 -
C++设计模式blogdown的专栏
C++设计模式(转载)C++设计模式之Adapter一、功能 将一个类的接口转换成客户希望的另外一个接口,解决两个已有接口之间不匹配的问题。Adapter模式使得原本由于接口不兼容而不能一起工作的那些类可以一起工作。 二、结构图 (1)class adapter (2)object adapter 三、实现 和其他很多模式一样,学习设计原创 2013-01-13 13:15:36 · 435 阅读 · 0 评论 -
在 VC6 中使用 GdiPlus-使用
下面用 VC6 来写一个 GdiPlus 的 Demo 工程 Step1:新建一个名为 Demo_GdiPlus 的 MFC AppWizard(exe) 工程操作步骤:(1)主菜单File->New...,选择 Projects 选项卡;(2)在工程类型列表中选中 MFC AppWizard(exe);(3)Project name 填入 Demo_G原创 2013-01-13 12:45:37 · 602 阅读 · 0 评论 -
Boost多线程编程blogdown整理
Boost多线程编程一、概述喷泉的水堵不死,恋情的火扑不灭。 线程是在同一法度同一时候内容许履行不合函数的离散处理惩罚队列,这使得在一个长时候进行某种特别运算的函数在履行时不阻碍其他的函数时变得十分首要。线程实际上容许同时履行两种函数,而这两者不必彼此守候。人生最可爱的,是为人竭诚。 一旦一个应用法度启动,它仅原创 2012-11-28 21:13:25 · 566 阅读 · 0 评论 -
MFC全局函数::AfxBeginThread blogdown整理
MFC全局函数::AfxBeginThread函数功能描述:创建新的线程函数原型:CWinThread* AfxBeginThread( AFX_THREADPROC pfnThreadProc, LPVOID pParam, int nPriority = THREAD_PRIORITY_NORMAL, UINT nStackSize = 0, DWORD dwCreateF原创 2012-11-28 21:10:15 · 1097 阅读 · 0 评论 -
windows核心编程--线程的同步
线程的同步由于同一进程的所有线程共享进程的虚拟地址空间,并且线程的中断是汇编语言级的,所以可能会发生两个线程同时访问同一个对象(包括全局变量、共享资源、API函数和MFC对象等)的情况,这有可能导致程序错误。属于不同进程的线程在同时访问同一内存区域或共享资源时,也会存在同样的问题。因此,在多线程应用程序中,常常需要采取一些措施来同步线程的执行。需要同步的情况包括以下几种: 在多原创 2012-11-29 19:32:54 · 358 阅读 · 0 评论 -
C++多线程(一)
WIN 多线程API一 简单实例比较简单的代码,创建10个线程,其中使第4个线程在一创建就挂起,等到其他的线程执行的差不多的时候再使第4个线程恢复执行。#include stdio.h> #include stdlib.h> #include windows.h> #define THREAD_NUM 10DWORD WINAPI PrintThread原创 2012-11-29 19:24:51 · 292 阅读 · 0 评论 -
C++多线程(六)
C++多线程(六)多线程之线程同步Mutex (功能与CriticalSection相同,保证某一时刻只有一个线程能够访问共享资源,但是是内核对象,所以访问速度要比CriticalSection要慢,但是增加了等待超时的功能,使用时可以根据实际的情况选择其一)一 Mutex 互斥对象(mutex)内核对象能够确保线程拥有对单个资源的互斥访问权。实际上互斥对象是因此而得原创 2012-11-29 19:28:29 · 293 阅读 · 0 评论 -
C++多线程(八)
C++多线程(八)多线程同步之Event(主要用来线程间的等待通知) 一 Event 在所有的内核对象中,事件内核对象是个最基本的对象。它们包含一个使用计数(与所有内核对象一样),一个用于指明该事件是个自动重置的事件还是一个人工重置的事件的布尔值,另一个用于指明该事件处于已通知状态还是未通知状态的布尔值。 事件能够通知一个操作已经完成。有两种不原创 2012-11-29 19:29:28 · 330 阅读 · 0 评论 -
c++多线程入门与提高 blogdown整理
今天我给大家讲一讲C++中的多线程编程技术,C++本身并没有提供任何多线程机制,但是在windows下,我们可以调用SDK win32 api来编写多线程的程序,下面我就此简单的讲一下:创建线程的函数 HANDLE CreateThread( LPSECURITY_ATTRIBUTES lpThreadAttributes, // SD SIZE_T dwStackS原创 2012-11-29 19:19:37 · 1291 阅读 · 0 评论 -
C++多线程(九)
多线程之线程局部存储一 线程局部存储 (TLS) 来自:http://msdn2.microsoft.com/en-us/library/ms686749.aspx 同一进程中的所有线程共享相同的虚拟地址空间。不同的线程中的局部变量有不同的副本,但是static和globl变量是同一进程中的所有线程共享的。使用TLS技术可以为static和glo原创 2012-11-29 19:30:06 · 377 阅读 · 0 评论 -
VC++多线程中线程之间的通信问题研究
当前流行的Windows操作系统能同时运行几个程序(独立运行的程序又称之为进程),对于同一个程序,它又可以分成若干个独立的执行流,我们称之为线程,线程提供了多任务处理的能力。用进程和线程的观点来研究软件是当今普遍采用的方法,进程和线程的概念的出现,对提高软件的并行性有着重要的意义。现在的大型应用软件无一不是多线程多任务处理,单线程的软件是不可想象的。因此掌握多线程多任务设计方法对每个程序员都是必需原创 2012-11-29 19:22:14 · 458 阅读 · 0 评论 -
C++多线程(四)
多线程同步之WIN API互锁函数 (可以避免使用CriticalSection或Mutex)一 互锁函数 互锁函数的家族十分的庞大,可以查看msdn(http://msdn2.microsoft.com/en-us/library/ms686360.aspx)以InterLocked开始的函数都是户数函数。使用互锁函数的优点是:他的速度要比其他的CriticalSect翻译 2012-11-29 19:27:36 · 370 阅读 · 0 评论 -
C++多线程(十)
多线程使用总结基础:1)最好使用C++ runtime的函数创建线程,即调用_beginthreadex创建线程。CreateThread()函数并不会执行C运行时数据块的变量的每线程初始化,因此在任何使用C运行时库的应用中,不能使用CrateThread()函数。2)最好不要显示的调用ExitThread()或TerminateThread(),因为调用这些不进行清理工作。3原创 2012-11-29 19:30:35 · 478 阅读 · 0 评论 -
android 文件关联的方法 实现点击文件打开指定应用软件
ANDROID文件关联之MIME TYPE 2013-05-16 11:41:48分类: Android平台自定义文件关联指的是打开一个你自己创建的文件,例如后缀是(.abc)。首先我先介绍下常见文件关联,例如.txt、.jpg。在Android中,任何文件类型或者MIME类型的关联性打开,是通过广播Intent来实现的。例如,你如果想要注册原创 2014-08-05 17:08:42 · 13800 阅读 · 0 评论
分享