小编noh*_*ros的帖子

应该在 ServiceMain 上创建一个新线程吗?

MSDN 说:

“ServiceMain 函数应该创建一个全局事件,对该事件调用 RegisterWaitForSingleObject 函数,然后退出。这将终止正在运行 ServiceMain 函数的线程,但不会终止服务......”

那么问题是:应该在ServiceMain函数内部创建一个新线程来执行服务代码,或者我可以简单地将服务设置为RUNNING状态并使用ServiceMain线程来运行服务代码?如果ServiceMain线程用于运行服务代码,SCM将保持锁定状态,即使服务状态设置为RUNNING?

c++ windows winapi windows-services

5
推荐指数
1
解决办法
1623
查看次数

缓存值类型c#

我正在为泛型类型开发一个缓存,并且有一个疑问,我应该缓存值类型,例如int,struct等.缓存通常用于存储昂贵的对象,并且值类型的创建非常便宜.将可以插入缓存中的项限制为引用类型将使代码更容易实现.允许缓存只存储引用类型是个好主意?

考虑从缓存中删除valur类型的原因是:缓存可以通过委托自动加载值,并且该委托永远不应返回null.由于值类型无法与null进行比较,因此defaut(T)可能是有效的值类型.如何检查用户提供的委托是否返回有效值(假设未引发异常)?

c# generics null caching value-type

3
推荐指数
2
解决办法
890
查看次数

标签 统计

c# ×1

c++ ×1

caching ×1

generics ×1

null ×1

value-type ×1

winapi ×1

windows ×1

windows-services ×1