开发者

(MSMQ) mqsvc.exe doesn't release memory

MSDN Thread

Hi, all.

First of all, please excuse any english language mistakes in the following description, because, I'm not a native speaker and well, I can't write it perfectly.

I'm trying to create a .NET (4.0) service for remote/transactional/asynchronous reception of recoverable messages from several queues. So, first, I use BeginPeek method and then Receive method in a TransactionScope (which implicitly uses MSDTC).

The problem is the mqsvc.exe of the host machine (win7/2k8r2 sp1) running my service, which does nothing else (and certainly nothing related to the reception/hosting of messages, MSMQ is empty and clean). mqsvc.exe memory allocation grows and it never releases any memory. All MSMQ registry keys about cache cleaning interval have a short time value (about 1 minute).

I tried several options :

  • with local and remote MSDTC (remote with obviously the host machine of messages).
  • with the COM library mqoa.dll instead of .NET to use explicit MSDTC transactions for MSMQ.
  • with several different machines (all win7/2k8r2 sp1).

There are no exceptions at the execution of my service, and all resources that I can close or/and dispose are closed/disposed as soon as possible. The memory allocation of my service is stable.

In all cases, it's开发者_C百科 the same problem. How to solve it?

Thanks in advance.

Vincent.


Problem solved on MSDN.

MSDN Thread


The following hotfix addresses this problem:

High memory usage by the Message Queuing service when you perform a remote transactional read on a Message Queuing 5.0 queue in Windows 7 or in Windows Server 2008 R2

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜