2015-10-04 65 views

回答

1

那麼RabbitMQ與.NET無關,所以RabbitmQ不能「創建appdomain並在那裏添加dll」。要接收來自兔子服務的消息,您需要以某種方式連接到它。之後,您必須堅持連接才能接收傳入的消息。所以至少你已經連接到一些代碼的兔子服務(例如官方的.NET客戶端),並且你堅持連接。現在你收到了一條消息。當然你可以創建新的應用程序域,在那裏加載DLL,在DLL中調用某種方法並銷燬應用程序域,但是你可以想象它有多醜又低效。你已經有這個消息並且可以處理它,那麼爲什麼要加載其他dll?更不用說兔子經常用於高速郵件處理,而且你的方法會殺死所有的表現(沒有任何理由)。總而言之,您可以編寫自己的.NET應用程序,它將完成您所描述的任務,但這不是「簡單」的方式。

+0

我沒有大量的消息。我希望RabbitMQ能夠自行加載n-invoke,所以我不必一直保留內存中的進程。你的回答是準確的,並且改進了我對RabbitMQ的理解。 Thankyou – fahadash

+0

即使是這樣的話 - 那個會加載n調用你的dll的進程將不得不一直在內存中而不是:) – Evk

+0

嗯,我想到RabbitMQ有一個24/7全天候運行的進程。爲什麼不產生調用外部DLL的線程 – fahadash

相關問題