> -- Сергей Губанов писал(а):
> ...Нахожу ваше решение излише строгим. Его можно смягчить.Я вот в дотнете тоже к хозяйствованию в одном (логическом) объектном пространстве допускаю только один поток, но это не означает, что в одном экземпляре рантайма у меня существует всего одно (логическое) объектное пространство. У меня их несколько непересекающихся. Они взаимодействуют друг с другом с помощью очередей сообщений.На тот случай, чтобы кто-то случайно не вызвал какую-то процедуру не в том потоке в каком надо у меня там стоят рантайм-проверки. Например, если какие-то процедуры должны исполняться только потоком класса BasicService, то в начале каждой из них стоит вызов очень маленькой процедурки (тактов на десять) BasicService.ThreadSafeInsurance()...
Да, вот это мне понятно.
По поводу проверки:  мне кажется была бы полезна, некая централизованная служба регистрации (процедуры в потоке), и проверка не в самой процедуре, а более общими средствами (т.е. не процедуры, а активного объекта)