Как я понимаю, если я открою представление из базы данных, используя db.getView(), не нужно делать это несколько раз из разных потоков.Есть мнения в Domino Thread Safe?
Но предположим, что у меня есть несколько потоков, ищущих вид с помощью getAllDocumentsByKey() Безопасно ли это сделать и параллельно перебирать DocumentCollections?
Кроме того, Document.recycle() беспорядок с DocumentCollection, будет ли это беспорядок друг с другом, если два потока ищут одинаковое значение и имеют одинаковые результаты в своей коллекции?
Примечание: Я только начинаю углубленно изучать это, но подумал, что было бы хорошо документировать здесь, и, может быть, мне повезет, и у кого-то будет ответ.
Вы спрашиваете о классах Java или COM-классов? –
Наверное, я не был уверен в этом. Я говорю о JAVA API – RLZaleski
Java API синхронизирует операции, но подвержен проблемам, когда ваш код изменяет состояние объектов API C, которые соответствуют объектам базы данных, и разделяются между объектами Java через потоки. Я думаю, что вы будете в безопасности с операциями getAllDocumentsByKey, но, учитывая синхронизацию, происходящую за кулисами, я сомневаюсь, что вы получите много преимуществ от многопоточности. Вероятно, у меня бы просто один поток выполнял поиск и отправлял коллекции в рабочие потоки. –