Является ли регистрация услуг / компонентов в Castle Windsor поточно-ориентированной? - PullRequest
2 голосов
/ 01 мая 2009

Является ли регистрация компонентов на замке Windsor поточно-ориентированной?

Т.е., могут ли несколько потоков одновременно регистрировать компоненты в одном и том же экземпляре контейнера?

(Кстати, да, я знаю, что это, вероятно, безумие.)

1 Ответ

7 голосов
/ 01 мая 2009

Трудно сказать, является ли сложный программный продукт, такой как Windsor, поточно-ориентированным или нет. Виндзор имеет несколько подсистем и внутренних служб. И каждая регистрация компонента может делать много вещей (настройка прокси, разные образы жизни, пользовательские зависимости ...). AFAIK нет никаких специальных тестов безопасности потока.

Однако, предполагая, что вы используете подсистемы по умолчанию, и ваши потоки не добавляют настраиваемые участники, субресольверы и т. Д. (То есть, просто регистрируют компонент), он должен быть потокобезопасным, поскольку классы, участвующие в регистрации компонента, выглядят так, как будто они Вы либо не имеете статуса, либо правильно заблокированы. DefaultKernel в основном делегирует операции различным подсистемам / внутренним службам, и, в частности, DefaultNamingSubSystem (подсистема хранения карт служб) должным образом заблокирована.

Я рекомендую спросить у пользователей-пользователей или castle-dev групп Google, вот где настоящие гуру Замка.

...