Я динамически загружаю код (функции) с сервера и выполняю его как код javascript, а затем сохраняю его в массиве и выполняю. Все эти фрагменты кода должны выполняться ровно один раз. Psuedocode следует как таковой
function fetch(foo){
if (foo in fooArray){
//Do Nothing
else{
//Fetch foo via Ajax and execute foo()
}
}
Проблема значительно сложнее, но по существу, если я выдаю команду ниже
fetch('someFunctionName');
fetch('someFunctionName');
fetch('someFunctionName');
fetch('someFunctionName');
все четыре будут исполнять if (foo in fooArray)
и предположить, что он не находится в массиве, и все четыре будут приступать к извлечению кода и его выполнению. Я помню, как в тот же день я узнал о семафорах и мьютексах, есть ли такие вещи для javascript.