Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности

Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
|
19.12.2005, 16:20
|
|||
|---|---|---|---|
|
|||
UDF как функция модуля |
|||
|
#18+
Всем привет! Хотелось бы отнестись к загружаемой DLL, которая содержит UDF, как к модулю. это, в первую очередь, опция "NOT FENCED" и обработка DllMain(...) { switch(....) { case DLL_PROCESS_ATTACH: .... case DLL_PROCESS_DETACH: .... для придания модулю состояния (linux - _init/_fini) Кто-нибудь делал/видел такое? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
19.12.2005, 16:42
|
|||
|---|---|---|---|
UDF как функция модуля |
|||
|
#18+
что-то не пойму какая связь между DllMain и Linux? и зачем вам это надо? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
19.12.2005, 18:37
|
|||
|---|---|---|---|
|
|||
UDF как функция модуля |
|||
|
#18+
DllMain - для Винды, естественно, связи нет, а я и не писал про связь :) надо сокеты открытые держать между вызовами UDF ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
20.12.2005, 09:27
|
|||
|---|---|---|---|
UDF как функция модуля |
|||
|
#18+
В течение какого промежутка времени хотите держать сокет открытым? В течение работы запросы/функции или в течение работы сервера базы данных? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
21.12.2005, 13:22
|
|||
|---|---|---|---|
|
|||
UDF как функция модуля |
|||
|
#18+
в течение всей работы сервера! AF_INET сокеты в Unix и named pipes в виндах должно работать по идее... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
21.12.2005, 13:29
|
|||
|---|---|---|---|
UDF как функция модуля |
|||
|
#18+
Я вам посоветую не заморачиваться на DLLMain() В любой .DDL или в .so можно использовать глобальные переменные. Сделать это не трудно. Единственное, что нужно помнить, что эти внешние фукции - реентерабельные, и экземпляр глобальной переменной будет существовать для всех сессий. По первому обращению к функции соответствующий объект загрузится в память, и прежде чем использовать сокет, вы должны глянуть, а проинициализирован ли он? Если нет - до нужно либо выставить семафор либо мьютекс либо еще какую-фигню. Т.е. что бы два приложения одновременно не стали "инициалилировать" ваш сокет. А дальше - все как всегда. Абсолютно не вижу трудностей. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
21.12.2005, 13:44
|
|||
|---|---|---|---|
|
|||
UDF как функция модуля |
|||
|
#18+
ага, я в курсе таких вещей, но тем не менее спасибо за ответ. :) проще всего использовать "compare exchange" - тогда и блокировки не понадобятся. все должно работать, но я ожидал найти отдельный топик в доках, что-то вроде: "extending db2 with persistant modules", а его там нет. Это немного настораживает - не хотелось бы сработать впустую. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|

start [/forum/topic.php?fid=43&mobile=1&tid=1605618]: |
0ms |
get settings: |
6ms |
get forum list: |
21ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
59ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
44ms |
get tp. blocked users: |
1ms |
| others: | 232ms |
| total: | 383ms |

| 0 / 0 |
