摘要: Windows消息简介 windows消息,就是指Windows发出的一个通知,告诉应用程序某个事情发生了。例如,单击鼠标、改变窗口尺寸、按下键盘上的一个键都会使Windows发送一个消息给应用程序。消息本身是作为一个记录传递给应用程序的,这个记录中包含了消息的类型以及其他信息。例如,对于单击鼠标所 阅读全文
posted @ 2021-10-07 15:44 liweiyin 阅读(901) 评论(0) 推荐(0) 编辑
摘要: 在windows应用程序中,窗口是其非常重要的一个元素。并且窗口是通过窗口句柄来标识的。句柄(HANDLE)是windows程序中一个重要的概念,其标识各种资源,包括图标句柄(HICON)、光标句柄(HCURSOR)和画刷句柄(HBRUSH)。 下面以一个带有自定义的画刷、光标和图标的windows 阅读全文
posted @ 2021-10-03 21:19 liweiyin 阅读(1621) 评论(0) 推荐(0) 编辑
摘要: 宽字符与多字节字符 在windows系统中,Windows NT的所有与字符有关的函数都提供两种方式的版本,而Windows 9x只支持ANSI方式。 Windows NT提供的两种方式分别是:Unicode字符集和多字节字符集。 一般我们会选择Unicode字符集,因为这样很方便我们开发,值得一提 阅读全文
posted @ 2021-09-27 11:25 liweiyin 阅读(274) 评论(0) 推荐(0) 编辑
摘要: 互斥对象 互斥对象:互斥对象(Mutex)属于内核对象,它能确保线程拥有对单个资源的互斥范围权利,即线程A正在拥有资源R,线程B恰好也要使用资源R,则线程B会等到线程A使用完资源后,才去使用资源R。 互斥对象包含一个使用数量、一个线程ID和一个计数器。线程ID标识系统中哪个线程拥有该互斥对象,计数器 阅读全文
posted @ 2021-09-12 17:54 liweiyin 阅读(269) 评论(0) 推荐(0) 编辑
摘要: async&await定义 首先async&await是语法糖。是C#5.0后支持的一种异步编程快捷方式。async书写在方法上,表示该方法是一个异步方法,同时,async与await一定是配套使用的,async异步方法的返回类型仅有三种: void,Task,Task<T>方法内部使用await关 阅读全文
posted @ 2021-08-30 15:38 liweiyin 阅读(365) 评论(0) 推荐(0) 编辑
摘要: C#中的多线程Task 一 、定义 msdn关于Task的解释如下: Task类表示不返回值并且通常以异步方式执行的单个操作。 Task对象是在 .NET Framework 4 中首次引入的 基于任务的异步模式的中心组件之一。 Task在线程池线程上异步执行,可以通过Status属性以及 、IsC 阅读全文
posted @ 2021-01-07 22:43 liweiyin 阅读(4644) 评论(0) 推荐(0) 编辑
摘要: C#多线程Thread Thread .net framework1.0提出的。Thread:是C#对计算机资源线程操作的一个封装类 启动线程的几种方式 可以通过提供委托来启动线程,该委托表示线程在其类构造函数中执行的方法。 然后调用 Start方法开始执行。 线程执行的方法无参数 如果该方法没有参 阅读全文
posted @ 2020-12-27 15:46 liweiyin 阅读(526) 评论(0) 推荐(0) 编辑
摘要: Invoke同步(按顺序)与BeginInvoke异步(无序) Invoke 在拥有此控件的基础窗口句柄的线程上执行委托,同步的。 BeginInvoke 在创建控件的基础句柄所在线程上异步执行委托。 如下所示: /// <summary> /// 同步方法:发起调用,代码按照顺序逐行执行。 有顺序 阅读全文
posted @ 2020-12-25 21:09 liweiyin 阅读(2577) 评论(0) 推荐(0) 编辑
摘要: Lambda的前世今生 在C#2.0之前,当我们执行委托绑定的方法时,具体如下所示: public class LambdaDemo { //public delegate void NoReturnNoParam(); public delegate void NoReturnWithParam( 阅读全文
posted @ 2020-12-10 17:32 liweiyin 阅读(259) 评论(0) 推荐(0) 编辑
摘要: 当使用VC自带的STL string append进行字符串拼接操作的时候,如下所示: // demo.cpp : Defines the entry point for the console application. // #include "stdafx.h" #include<iostrea 阅读全文
posted @ 2020-12-06 22:30 liweiyin 阅读(253) 评论(0) 推荐(0) 编辑