2010-05-02 1 views
0

Я изучаю пару дней вкл. И выкл., И вам еще предстоит выяснить, как лучше всего достичь следующей цели.Отправка общих задач в WCF или .Net Remoting

Я хотел бы определить либо интерфейс, либо абстрактный класс в C#, который имеет связанный с ним метод Run, аналогичный интерфейсу Java runnable. Целью было бы иметь общую очередь, которая содержит список этих объектов. Затем отдельные клиенты смогут выводить свои собственные бегущие классы и добавлять их в очередь, размещенную сервером. Клиенты также смогут вытаскивать эти запущенные объекты из очереди и выполнять их произвольно.

Похоже, что это должно быть осуществимо на языке, основанном на виртуальной машине, без необходимости размещать какие-либо конкретные реализации в общей сборке, но до сих пор мне не удавалось найти рабочий пример такой системы.

Кто-нибудь знает, как это может быть достигнуто?

+0

Представляете ли вы код, выполняющий все на сервере? Или это будет выполняться на клиентах? (Знание того, что скажет, должны ли ваши клиенты нуждаться в конкретной реализации, а также о том, сколько информации нужно будет сериализовать и десериализовать, чтобы вызвать метод Run.) –

+0

Код в идеале должен быть выполнен на любом произвольном клиенте. – Eric

ответ

0

Возможно, вы захотите проверить проект Agatha. Он обеспечивает простой слой запроса/ответа для WCF. Что касается добавления новых реализаций «Запуск», вы должны использовать контейнер IoC или MEF для регистрации новых конечных точек.

+0

Спасибо, что указал на MEF. Очень полезная структура для расширений плагина. – Eric