Допускает ли API Navisworks (как COM, так и .Net) работу в многопоточном режиме?

Автор Тема: Допускает ли API Navisworks (как COM, так и .Net) работу в многопоточном режиме?  (Прочитано 11835 раз)

0 Пользователей и 2 Гостей просматривают эту тему.

Тема содержит сообщение с Решением. Нажмите здесь чтобы посмотреть его.

Оффлайн VladislavАвтор темы

  • ADN OPEN
  • ***
  • Сообщений: 210
  • Карма: 0
Еще такой вопрос.
Допускает ли API Navisworks (как COM, так и .Net) работу в многопоточном режиме?
То есть, к примеру, могу ли я выполнять код, получающий геометрию элементов,
одновременно в нескольких потоках?
Спасибо за информацию.

Оффлайн Александр Ривилис

  • Administrator
  • *****
  • Сообщений: 13882
  • Карма: 1787
  • Рыцарь ObjectARX
  • Skype: rivilis
Интересный вопрос. Я его переадресую в ADN DevHelp. По результатам отпишусь.
Не забывайте про правильное Форматирование кода на форуме
Создание и добавление Autodesk Screencast видео в сообщение на форуме
Если Вы задали вопрос и на форуме появился правильный ответ, то не забудьте про кнопку Решение

Оффлайн VladislavАвтор темы

  • ADN OPEN
  • ***
  • Сообщений: 210
  • Карма: 0
Спасибо.
Когда я попробовал это сделать, у меня не получилось.
Но, возможно, я что-то делаю не так...

Оффлайн Александр Ривилис

  • Administrator
  • *****
  • Сообщений: 13882
  • Карма: 1787
  • Рыцарь ObjectARX
  • Skype: rivilis
Когда я попробовал это сделать, у меня не получилось.
Что при этом происходило?
Не забывайте про правильное Форматирование кода на форуме
Создание и добавление Autodesk Screencast видео в сообщение на форуме
Если Вы задали вопрос и на форуме появился правильный ответ, то не забудьте про кнопку Решение

Оффлайн VladislavАвтор темы

  • ADN OPEN
  • ***
  • Сообщений: 210
  • Карма: 0
Появляется такое сообщение (см. вложение)

Оффлайн Александр Ривилис

  • Administrator
  • *****
  • Сообщений: 13882
  • Карма: 1787
  • Рыцарь ObjectARX
  • Skype: rivilis
Появляется такое сообщение (см. вложение)
Ага. Ну к COM-серверу насколько я помню нельзя обращаться сразу из нескольких потоков.
Не забывайте про правильное Форматирование кода на форуме
Создание и добавление Autodesk Screencast видео в сообщение на форуме
Если Вы задали вопрос и на форуме появился правильный ответ, то не забудьте про кнопку Решение

Оффлайн VladislavАвтор темы

  • ADN OPEN
  • ***
  • Сообщений: 210
  • Карма: 0
Следовательно, и многопоточная работа с API невозможна?

Оффлайн Александр Ривилис

  • Administrator
  • *****
  • Сообщений: 13882
  • Карма: 1787
  • Рыцарь ObjectARX
  • Skype: rivilis
Следовательно, и многопоточная работа с API невозможна?
Давай дождёмся официального ответа.
Не забывайте про правильное Форматирование кода на форуме
Создание и добавление Autodesk Screencast видео в сообщение на форуме
Если Вы задали вопрос и на форуме появился правильный ответ, то не забудьте про кнопку Решение

Оффлайн Александр Ривилис

  • Administrator
  • *****
  • Сообщений: 13882
  • Карма: 1787
  • Рыцарь ObjectARX
  • Skype: rivilis
Vladislav,
Я получил ответ от ADN DevHelp, требующий твоего участия. По их утверждениям многое зависит от контекста выполнения. Так что без примера кода (причем полноценного собираемого проекта) тут никак. Если ты действительно заинтересован в решении этой проблемы, то создай пример проекта. И если ты решишься на это, но не хочешь выкладывать его на всеобщее обозрение, то можешь отправить его лично мне. Я переправлю его в ADN DevHelp для анализа возможности распараллеливания процесса.
Не забывайте про правильное Форматирование кода на форуме
Создание и добавление Autodesk Screencast видео в сообщение на форуме
Если Вы задали вопрос и на форуме появился правильный ответ, то не забудьте про кнопку Решение

Оффлайн VladislavАвтор темы

  • ADN OPEN
  • ***
  • Сообщений: 210
  • Карма: 0
Попробую подготовить отдельный.
Только займет некоторое время.
А я должен сам делать в нем распараллеливание или просто указать код, который должен
разбиваться на потоки?

Оффлайн Александр Ривилис

  • Administrator
  • *****
  • Сообщений: 13882
  • Карма: 1787
  • Рыцарь ObjectARX
  • Skype: rivilis
Попробую подготовить отдельный.
Только займет некоторое время.
А я должен сам делать в нем распараллеливание или просто указать код, который должен
разбиваться на потоки?
Отлично, но всё-таки не затягивай процесс, пока мой запрос не закрыли :-) Сделай сам распараллеливание, как ты его видишь. Надеюсь в результате можно будет получить от ADN DevHelp рекомендации как это можно будет правильно сделать. Если конечно это возможно...
Не забывайте про правильное Форматирование кода на форуме
Создание и добавление Autodesk Screencast видео в сообщение на форуме
Если Вы задали вопрос и на форуме появился правильный ответ, то не забудьте про кнопку Решение

Оффлайн VladislavАвтор темы

  • ADN OPEN
  • ***
  • Сообщений: 210
  • Карма: 0
Подготовил демонстрационный проект с распараллеливанием процесса получения геометрии (находится во вложении).
Плагин собирается, запускается и далее виснет с указанной ранее ошибкой.

Оффлайн Александр Ривилис

  • Administrator
  • *****
  • Сообщений: 13882
  • Карма: 1787
  • Рыцарь ObjectARX
  • Skype: rivilis
Подготовил демонстрационный проект с распараллеливанием процесса получения геометрии (находится во вложении).
Плагин собирается, запускается и далее виснет с указанной ранее ошибкой.
Еще бы к нему небольшой тестовый файл, на котором испытывать.
Не забывайте про правильное Форматирование кода на форуме
Создание и добавление Autodesk Screencast видео в сообщение на форуме
Если Вы задали вопрос и на форуме появился правильный ответ, то не забудьте про кнопку Решение

Оффлайн VladislavАвтор темы

  • ADN OPEN
  • ***
  • Сообщений: 210
  • Карма: 0
Я испытывал на примерах, идущих вместе с Нэвисом. Там несколько в папке samples.

Оффлайн Александр Ривилис

  • Administrator
  • *****
  • Сообщений: 13882
  • Карма: 1787
  • Рыцарь ObjectARX
  • Skype: rivilis
Я испытывал на примерах, идущих вместе с Нэвисом. Там несколько в папке samples.
Принято. Отправил. Попросил прокомментировать код и возможность его ускорить.
Не забывайте про правильное Форматирование кода на форуме
Создание и добавление Autodesk Screencast видео в сообщение на форуме
Если Вы задали вопрос и на форуме появился правильный ответ, то не забудьте про кнопку Решение