В настоящее время я создал общую библиотеку (libshared.so), которая содержит переменную «a», которая будет изменяться с помощью с помощью общей библиотеки api. У меня есть два приложения app1 и app2. app1 использует общую библиотеку api, которая изменяет значение «a». теперь одновременно, когда приложение2 работает должно увидеть измененное значение. Это противоречит фактическому использованию разделяемой библиотеки, поскольку отдельный экземпляр общей библиотеки будет создан для каждого приложения. теперь я хочу использовать один экземпляр разделяемой библиотеки между двумя приложениями 1 и 2, так что они могут видеть один и тот же сегмент кода и данных общей библиотеки. Есть ли возможный путь для достижения этой цели, изменяя Gcc флаги компоновщикаКак разделить одну общую библиотеку (*. So) экземпляр между двумя приложениями
0
A
ответ
0
Этого ответ на:
- What happens to global and static variables in a shared library when it is dynamically linked?
- C Linux: Global variable located in shared library as singleton
расшатать ли ваши ожидания от подхода разделяемых библиотек.
Я рекомендую вам взглянуть на Shared Memory и POSIX APIshmget.
Один процесс будет действовать как сервер и создать общую память и предоставить ключ общей памяти клиенту.
Другой подход должен был бы создать канал для обмена данными между процессом
Вы можете прочитать this page, чтобы иметь больше информации о том процессе общения на Linux
+0
Первая ссылка не актуальна. –
Смежные вопросы
- 1. Связь между приложениями Windows Phone через общую библиотеку общего доступа
- 2. Как общаться между двумя приложениями?
- 3. Include Общую библиотеку .so в андроиде студии
- 4. Не удается найти общую библиотеку: libhdfs3.so
- 5. Сериализация между двумя приложениями
- 6. Как общаться между двумя приложениями
- 7. Конфликты между двумя приложениями
- 8. связь между двумя приложениями
- 9. Поделитесь интерфейсом между двумя приложениями?
- 10. Весенняя безопасность между двумя приложениями
- 11. M2M между двумя различными приложениями
- 12. Как сделать родную общую библиотеку андроидов (.so) неспособной отлаживать, добавив
- 13. Как создать общую библиотеку (.so) в сценарии automake?
- 14. Связь между двумя приложениями MS Access?
- 15. Разделить между двумя символами
- 16. Связь между двумя приложениями C#
- 17. android связь между двумя приложениями
- 18. Обмен данными между двумя приложениями
- 19. Обмен данными между двумя приложениями
- 20. Труба между двумя консольными приложениями?
- 21. Асинхронная связь между двумя приложениями
- 22. Связь между двумя приложениями Flex
- 23. Зачем использовать общую библиотеку (.so) в Linux с флагом -fPIC?
- 24. Интерфейс AIDL между двумя приложениями
- 25. Отправка сигналов между двумя приложениями
- 26. связь между двумя приложениями flex
- 27. Межпроцессная связь между двумя приложениями
- 28. Использование url_for между двумя приложениями
- 29. Взаимное исключение между двумя приложениями
- 30. Связь между двумя отдельными приложениями
Вы ищете [Shared Memory (википедия)] (https://en.wikipedia.org/wiki/Shared_memory#In_software) – dvhh
Дополнительная информация http://stackoverflow.com/a/19374253, http://stackoverflow.com/a/14563172 – dvhh
Нет dvhh, я не ищем общую память, у меня есть набор api, который будет использоваться app1 и app2. как это сделать с использованием общей памяти, если это возможно с разделяемой памятью – anikhan