Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / PowerBuilder Новый топик    Ответить
 com многопоточность  [new]
Юрико
Member

Откуда:
Сообщений: 4
имеем созданый и откомпилированый COM c двумя простыми функциями put(integer) , integer get()
1- записывает вторая читает то что записала 1 функкция
имеем 2 клиентов на одной машине
запускаем 1 клиента
obj = CREATE OleObject
obj.ConnectToNewObject("MY.COM")
obj.put(10)
идея была такова :
запускаем 2 клиента
integer gi
obj = CREATE OleObject
obj.ConnectToObject("MY.COM")
gi =obj.get()
в результате gi как бы должны получить 10 но...
во первых почему- то несмотря на то что первый клиент уже запустил 1 экземляр MY.COM
не срабатывает функция obj.ConnectToObject("MY.COM") у второго клиента зато
срабатывает obj.ConnectToNewObject("MY.COM")
но это нарушает всю картину потому что в таком варианте создается 2 экземляр
MY.COM который есс-но не знает о том что 1 - клиент записал в него 10
как можно решить эту задачку????
21 янв 07, 13:10    [3671454]     Ответить | Цитировать Сообщить модератору
 Re: com многопоточность  [new]
AStadnik
Member

Откуда:
Сообщений: 15
Юрико

во первых почему- то несмотря на то что первый клиент уже запустил 1 экземляр MY.COM
не срабатывает функция obj.ConnectToObject("MY.COM") у второго клиента зато
срабатывает obj.ConnectToNewObject("MY.COM")


Формат вызова ConnectToObject( filename) Эта функция используется для создания нового процесса из файла, а не подключения к существующему.

Юрико
но это нарушает всю картину потому что в таком варианте создается 2 экземляр
MY.COM который есс-но не знает о том что 1 - клиент записал в него 10
как можно решить эту задачку????


Насколько я знаю, задача обмена данными между com-объектами, которые были созданны в разных процессах, решается другими средствами. Это делается на стороне com-сервера.
26 янв 07, 17:29    [3700994]     Ответить | Цитировать Сообщить модератору
Все форумы / PowerBuilder Ответить