Могу ли я использовать семафоры между настольным приложением Java и веб-сайтом php? - PullRequest
0 голосов
/ 07 мая 2018

У меня есть Java-программа, которая порождает веб-приложение. Конечной целью этого веб-приложения является получение токена аутентификации, который необходимо отправить обратно в Java-приложение.

Я узнал о семафорах в моих классах операционной системы, и мне было интересно, можно ли использовать семафоры / разделяемую память между двумя разными процессами, написанными на разных языках программирования. Извините за мою наивность, но эта концепция все еще довольно нова для меня, и я использовал семафоры только для программ, написанных на том же языке.

Если это возможно, образец будет принят с благодарностью.

Если нет, какой мой лучший вариант для отправки небольшого объема данных между веб-приложением PHP и настольным Java-приложением (желательно без использования базы данных)?

Я использую Windows 10.

1 Ответ

0 голосов
/ 07 мая 2018

Семафоры - это просто счетчики с двоичным семафором, представляющим счетчик 0,1, или просто блокировкой. Обычно они используются в процессе с потоками или между процессами, использующими устройство ОС, такое как канал, разделяемая память или низкоуровневый семафор ОС.

Я думаю, что вы можете реализовать нечто подобное с общей службой (веб-сервис, восстановление, обмен сообщениями и т. Д.), Которая делает то же самое - автоматическое включение / уменьшение блокировки. Однако вам придется разобраться с ожидающей семантикой, поскольку типичные семафоры могут иметь цикл while () и ждать, пока он снова не освободится.

Я думаю, вам лучше подумать о более простом подходе?

...