powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Глобальная переменная в триггерной С-функции
4 сообщений из 4, страница 1 из 1
Глобальная переменная в триггерной С-функции
    #32932661
Hordi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Имеется триггерная функция, написанная на С. В этой функции при первом вызове инициализируется некая глобальная структура данных. Интересует, корректно ли использовать данную ранее инициализированную структуру при повторных вызовах данной функции или нужно инициализировать все повторно? Также не совсем понятен вопрос с доступом к подобным глобальным переменным в случае одновременного (многопоточного, например) вызова данной функции.
...
Рейтинг: 0 / 0
Глобальная переменная в триггерной С-функции
    #32932738
wbear
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
писал на С тригера но до этого недошел - небыло острой необходимости..и в доках про это как то плохо написанно...единственное могу посоверовать ...загляни с исходники либы plpgsql на предмет создания сохранения плана...он это средствами пг както запоминает. + в контрибах в исходниках что то было
...
Рейтинг: 0 / 0
Глобальная переменная в триггерной С-функции
    #32934632
gamych
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
HordiИмеется триггерная функция, написанная на С. В этой функции при первом вызове инициализируется некая глобальная структура данных. Интересует, корректно ли использовать данную ранее инициализированную структуру при повторных вызовах данной функции или нужно инициализировать все повторно? Также не совсем понятен вопрос с доступом к подобным глобальным переменным в случае одновременного (многопоточного, например) вызова данной функции.
Использовать эти данные можно. Нужно лишь быть аккуратным в случае запоминания адресов динамически выделяемых блоков памяти - это можно делать только для блоков, выделяемых в контексте процесса.
С одновременным доступом вопрос как раз полностью понятен - поскольку на каждое соединение форкается postmaster и библиотека грузится в дочерний процесс заново, то ни о каком одновременном доступе речи быть не может.
...
Рейтинг: 0 / 0
Глобальная переменная в триггерной С-функции
    #32935779
Hordi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Спасибо за ответы.
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Глобальная переменная в триггерной С-функции
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]