我是一名从事网络应用程序工作的.net开发人员,过去几个月我开始研究Windows应用程序,一个应用程序需要每天中午12点运行,所以我在google的帮助下编写了一个Web服务,它正在运行细
但我只是想知道Windows服务是如何工作的。 我阅读了很多帖子而没有人回答我的问题。所以我用自己的话来说。
根据我对Web服务的理解,我使用计时器创建一个调度程序,该计时器全部运行24小时,并在满足计时器条件时执行必要的代码。
在调度程序中,我配置一个调度程序,在满足时间条件时运行一个应用程序(在以前的情况下是一个服务)。
现在我的问题:
关于RAM使用情况?
我知道服务使用RAM。但考虑到我的代码是否很重,我们考虑10mb。 Ther fore.exe文件大约为10mb或更多。因此,当服务启动时它会在24小时内使用10mb的RAM,或者它只会创建服务中的调度程序,这将非常小,然后在满足时间时加载服务代码?
考虑调度程序如何工作。我认为会有一个触发器在遇到时间时触发并触发触发器将执行.exe文件通常让我称之为服务(但它是一个应用程序)。所以这里服务代码与调度程序分离,因此只有调度程序运行并将服务代码加载到RAM中。
我是对的吗? 调度程序是否也运行所有24小时检查时间?
希望获得一些有价值的答案。
提前致谢。
答案 0 :(得分:0)
一切都取决于您的实施。
这是Windows服务的工作方式:
yourservice.exe
yourservice.exe
范围内,您必须实施服务命令(例如:OnStart
,OnStop
)yourservice.exe
就会运行我的建议:
OnStart
方法启动计时器(计时器几乎不需要任何资源)在第3步中,你可以自由地实例化你的逻辑两次,然后当然会使用2x 10兆。