-
最完善的java购物系统
假设现在要设计一个贩卖各类书籍的电子商务网站的购物车系统。对所有的教材类图书 实行每本一元的折扣;对连环画类图书提供每本7%的促销折扣;而对非教材类的计算机图书有3%的折扣;对其余书没有折扣。使用策略模式、工厂模式、单子模式进行设计
- 2022-02-12 13:49:56下载
- 积分:1
-
网站模板20040821015610.rar
网站模版20040821015610.rar-website template 20040821015610.rar
- 2023-08-17 09:55:03下载
- 积分:1
-
C++、MFC源代码observer
C++、MFC源代码observer-C, MFC source code observer
- 2023-07-11 01:35:04下载
- 积分:1
-
文件修改监控
ReadDirectoryChangesW 有同步和异步2种方式,
根据前面打开的文件夹对象句柄决定。
1. 异步方式,如果 CreateFile 指定了打开类型 FILE_FLAG_OVERLAPPED 就是异步方式,ReadDirectoryChangesW 调用的时候就需要指定 OVERLAPPED 参数.
接下来对文件夹I/O变化的响应判断有多种方式。
A通过不断的调用HasOverlappedIoCompleted函数(非阻塞,参数就是前面的OVERLAPPED 对象指针)的返回值来判断是否发生了 关注文件句柄的I/O操作。如果发生变化,再执行你的 switch(Buffer[0].Action) 操作过程。
B GetOverlappedResult 读取 OVERLAPPED 对象的结果。(阻塞)
C 完成端口 GetQueuedCompletionStatus (阻塞)。
其中阻塞方式,必须采用多线程的方式,否则你的主线程被阻塞的话,对话框就动不了了。非阻塞方式也可用多线程,结合hEvent对象来使用。
2.同步方式,如果CreateFile不指定FILE_FLAG_OVERLAPPED ,就是同步方式。
同步方式操作比较简单。lz的程序看来就是使用的同步方式。
在同步下,ReadDirectoryChangesW 将被阻塞,直到一个文件夹句柄的I/O操作到来,然后才能判断。所以lz的程序会死掉。
同步方式必须采用多线程,再创建一个线程,线程函数采用如下方式:
UINT ThreadProc(PVOID)
{
CreateFile();
while(1) // 如果只想监视一次文件的I/O变化,可不用while循环。
{
- 2022-03-10 05:44:52下载
- 积分:1
-
基于蒙特卡洛法的并行计算
使用蒙特卡洛法通过多线程计算π值,可以灵活的修改线程的数目
- 2022-09-30 06:45:08下载
- 积分:1
-
multithreading examples procedures
多线程的例子程序-multithreading examples procedures
- 2023-01-21 15:35:04下载
- 积分:1
-
分析VB工程文件(VBP文件)
分析VB工程文件(VBP文件)-analysis VB project files (VBP)
- 2023-05-20 01:45:03下载
- 积分:1
-
telnet客户端
telnet客户端-telnet client
- 2022-05-18 20:17:08下载
- 积分:1
-
CSerialPort类的头文件和c源文件,封装了VC中串口通信的api,方便编写串口调试软件...
CSerialPort类的头文件和c源文件,封装了VC中串口通信的api,方便编写串口调试软件-CSerialPort class header file and the c source file, package the VC in the serial communication of the api, facilitate the preparation of serial debugging software
- 2022-04-07 09:58:25下载
- 积分:1
-
创建动态链接扩展库
创建动态链接扩展库-create dynamic link library expansion
- 2022-07-21 06:44:07下载
- 积分:1