Здравствуйте, tealex, Вы писали:
T>может ошибка синхронизации ?
Похоже на то. Я вот поотлаживал повнимательней и понял, что происходит следующее. В промежуток между моментом, когда я регистрирую на сервере Wellknown тип (у меня он называется StatisticsServer), и моментом, когда я вызываю RemotingServices.Marshal для созданного мной объекта, клиент успевает подключиться к серверу и тем самым спровоцировать создание другого объекта StatisticsServer. И поэтому в функции Marshal генерируется исключение. Мне необходимо самому создавать объект StatisticsServer, чтобы инициализировать его должным образом. Я вижу 2 варианта решения:
1. Перенести регистрацию и вызов Marshal в одну функцию (сейчас между их вызовами проходит пара секунд и делается это в разных потоках).
2. При создании своего объекта проверять, не был ли он уже создан и если да, то использовать предыдущий объект (проводить доинициализацию).
Проще первый вариант. Но возникает вопрос, достаточно ли будет вызывать функции в одном потоке или теоретически все же возможно, что между регистрацией и Marshal клиент успеет подключиться, и ситуация повторится?