Является ли Localstorage синхронным на нескольких вкладках? - PullRequest
0 голосов
/ 01 июня 2018

У меня есть метод, который вызывается SignalR на нескольких вкладках при получении сообщения, но я хочу, чтобы только одна из них воспроизводила звуковой сигнал.Моя идея состояла в том, чтобы первая вкладка, получившая ее, проверила, существует ли она, и, если нет, сохранит гид, связанный с этим, в Localstorage.Но я не могу понять, получу ли я синхронные проблемы с этим решением

1 Ответ

0 голосов
/ 02 июня 2018

Да, это должно быть возможно, но вы должны быть осторожны, так как есть состояние гонки.Вероятно, вам потребуется быстро вызвать localStorage.getItem, а затем localStorage.setItem - но нет гарантии, что другая вкладка также не вызывала setItem за это время.

Чтобы обойти это, ищите какой-томьютекс, который можно использовать с localStorage.Ранее я написал свой собственный, но вы можете использовать:

https://github.com/chieffancypants/fast-mutex

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...