• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号
您的位置:首页 > 程序设计 >vc/mfc > 我要做一个组件,请大家给点建议!!关于线程

我要做一个组件,请大家给点建议!!关于线程

作者:佚名 字体:[增加 减小] 来源:互联网 时间:2017-06-04

佚名通过本文主要向大家介绍了点支撑玻璃幕墙组件,机战点组件脚本,线程知识点,java多线程知识点,多线程检查点等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com
问题: 我要做一个组件,请大家给点建议!!关于线程
描述:

我要做一个文件加密组件,主要实现以下方法:
EncryptFile(...)加密指定文件函数(算法已经确定)
IsFileEncrypted(....)检查指定文件是否已经加密
IsWorking(...)检查加密是否正在进行
Progress获取加密进度的属性
组件主要用于网页,其次exe程序。由于加密需要时间长,所以不知道是不是应该在EncryptFile函数里新建线程。另外组件用什么线程模式?Apartment还是Single.为什么?请指教。


解决方案1:

Threading Revisited
After a careful examination of the implementation of the TipOfTheDay coclass, we confirmed our original suspicions: we were able to design the component such that it doesn't store global data, per-class data, or even per-instance data. The state of the component is entirely determined by the cookie parameter stored by the client application, so restricting object access to a single thread is unnecessary. Because the TipOfTheDay component doesn't use worker threads, there's no reason we wouldn't allow it to be created in an STA, so it makes sense to support both threading models. We'll change the Registry setting from ThreadingModel=Apartment to ThreadingModel=Both by editing the TIPOFTHEDAY.RGS file that the ATL Object Wizard created and added to the project.
InprocServer32 = s `%MODULE%'
{
    val ThreadingModel = s `Both'
}
 
We'll also need to change some wizard-generated code to reflect the threading model. Replace
#define _ATL_APARTMENT_THREADED
Public CComObjectRootEx<CComSingleThreadModel>
 
with
#define _ATL_FREE_THREADED
Public CComObjectRootEx<CComMultiThreadModel>
 
NOTE
--------------------------------------------------------------------------------
 It wouldn't be accurate to say that the TipOfTheDay component is stateless, because the call history does indeed affect the data returned by the GetNextTip method. A client that calls GetNextTip three times will get a different result than a client that calls GetNextTip four times. More precisely, our component can be called "state estranged." A separate entity manages and stores its state.


分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • 我要做一个组件,请大家给点建议!!关于线程

相关文章

  • 2017-06-05 怎么改变进程的优先级?
  • 2017-06-04 做com用mfc多还是用atl多,请举些上述两种方法的比较。
  • 2017-06-04 如何在VSnet2003中使用midlexe?
  • 2017-06-05 急,请教一问题,关于调用IStream中Write函数报错
  • 2017-06-05 vs2005里面共享数据段为何不能共享啊?
  • 2017-06-04 ATL怎么实现IDispatch而不是CoClass
  • 2017-06-04 DCOM使用CoSetProxyBlanket成功获得接口,但在通过查询接口的时候返回E_ACCESSDENIED
  • 2017-06-05 VC在EXCEL中画出的图形如何组合一起
  • 2017-06-04 学习中遇到的迷惑:关于调试一个简单的com服务器DLL
  • 2017-06-04 用户自定义数据类型与VARIANT类型的转换

文章分类

  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号

最近更新的内容

    • IHTMLDocument2与"InternetExplorer_Sever"类的窗口之间的关系
    • ActiveX在IE中显示不正常的问题
    • 求救:VC调用word时,怎样才能隐藏word的某些菜单项
    • 应聘上中兴的兄弟请指点,太难等了
    • 请教一下CreateThread和AfxBeginThread的问题?
    • 怎样用atl控制开发模式下的窗口?
    • 如何初始化ocx控件的大小?
    • 在工程中间调用DLL中间的函数进行网络通信
    • 请问如何破解dll的文件!也就是把dll的文件的源文件给破解出来!
    • mfc界面不响应的问题,请前辈指点。

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有