|
|
|
Объясните про апартменты COM на пальцах
|
|||
|---|---|---|---|
|
#18+
чтото несколько раз читал-читал, так точно и не вкурил для чего и зачем и как. Понял что это крутится вокруг чего то видимо многопоточного, но чтобы четко так и не понял. Объясните на пальцах. Модератор: Тема перенесена из форума "C++". ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.02.2010, 11:50:28 |
|
||
|
Объясните про апартменты COM на пальцах
|
|||
|---|---|---|---|
|
#18+
Главное назначение апартаментов -- синхронизация доступа к однопоточным COM-объектам в многопоточной среде. Таким образом старые, ещё однопоточные контролы и объекты, которые никогда не проектировались с хотя бы идеей о существовании многопоточности, могут работать в многопоточной среде хотя бы как-то. Апартамент сериализует доступ к объектам, поддерживает очередь обращений (запросов) к объектам, и всё такое прочее. Ну и поскольку нужно, чтобы работа со всеми объектами была бы одинакова, MS сделали (вполне логично) три типа апартаментов: -- разделяемый (общий) для однопотоковых объектов -- индивидуальный для однопотокового объекта -- индивидуальный для многопотокового объекта. Вроде бы так. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.02.2010, 12:29:13 |
|
||
|
Объясните про апартменты COM на пальцах
|
|||
|---|---|---|---|
|
#18+
многопоточная где - на сервере или клиенте? что значит "работать хоть както"? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.02.2010, 12:43:41 |
|
||
|
Объясните про апартменты COM на пальцах
|
|||
|---|---|---|---|
|
#18+
Гусар wrote: > многопоточная где - на сервере или клиенте? что значит "работать хоть > както"? На сервере, конечно. Т.е. в обслуживающем объекте. Posted via ActualForum NNTP Server 1.4 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.02.2010, 12:45:28 |
|
||
|
Объясните про апартменты COM на пальцах
|
|||
|---|---|---|---|
|
#18+
а вот когда на клиенте интерфейс полученный в одном потоке не видится в другом - это что такое? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.02.2010, 14:02:40 |
|
||
|
Объясните про апартменты COM на пальцах
|
|||
|---|---|---|---|
|
#18+
Гусар wrote: > а вот когда на клиенте интерфейс полученный в одном потоке не видится в > другом - это что такое? Это как ? Posted via ActualForum NNTP Server 1.4 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.02.2010, 21:22:00 |
|
||
|
Объясните про апартменты COM на пальцах
|
|||
|---|---|---|---|
|
#18+
Гусар wrote: > а вот когда на клиенте интерфейс полученный в одном потоке не видится в > другом - это что такое? А это как -- не видится ? Posted via ActualForum NNTP Server 1.4 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.02.2010, 21:41:45 |
|
||
|
Объясните про апартменты COM на пальцах
|
|||
|---|---|---|---|
|
#18+
при попытке вызвать метод интерфейса в другом потоке он там какую то ошибку выдает, забыл какую, но суть в том что если хочешь вызвать в другом то его туда надо отмаршалить. Видимо тут тоже связь с апартментами. Возможно сингл (вызываестя coinitialize без параметров) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.02.2010, 12:58:09 |
|
||
|
Объясните про апартменты COM на пальцах
|
|||
|---|---|---|---|
|
#18+
Гусар wrote: > при попытке вызвать метод интерфейса в другом потоке он там какую то > ошибку выдает, забыл какую, но суть в том что если хочешь вызвать в > другом то его туда надо отмаршалить. Видимо тут тоже связь с > апартментами. Возможно сингл (вызываестя coinitialize без параметров) Маршалить в другой поток не надо. У потоков всех одна память. Но ошибка конечно может быть. Posted via ActualForum NNTP Server 1.4 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.02.2010, 14:11:13 |
|
||
|
|

start [/forum/topic.php?fid=16&msg=36441872&tid=1343908]: |
0ms |
get settings: |
7ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
259ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
47ms |
get tp. blocked users: |
1ms |
| others: | 200ms |
| total: | 547ms |

| 0 / 0 |
