OnStart 関数である WCF Windows サービスがあります。
protected override void OnStart(string[] args)
{
System.Diagnostics.Debugger.Launch(); //added for debugging for now
_Host = new ServiceHost(typeof(Service));
_Host.Open();
_Manager = new Manager();
_Manager.Start();
}
_Manager.Start() は、次の定義を持つ Agent.Start() を呼び出します (Execute
public void Start()
{
_Thread = new Thread(new ThreadStart(Execute));
_Thread.Start();
}
パラメータExecute
は次のような関数です
public void Execute()
{
//mapping data stuff here
//I put a break point at some line of code in this function
//but it is not reached
}
Execute 関数のコードにブレークポイントを入れたのですが、F11 キーを押してステップ インしても、関数に移動しませんExecute
。
どういうわけか実行関数に入ります。実行関数のコードは次のようになります。
try
{ System.Messaging.Message amsg = _RequestQueue.Receive();
/// other code
}
この行を通過するたびに、デバッガーは失われます...それは静止したままで、他のアクションはありません。今どこにあるのかわかりません...
まことにありがとうございます。どんなアイデアでも大歓迎です。