Александр Аксентьев: так это же Дениска. Это не первый его вопрос его подобного рода. Если не путаю - уже больше года вижу от него вопросы подобного уровня.
Конечно возможны. Пых довольно мощный язык, так что защититься от влезания в код можно лишь, так, как делают все люди для песочниц - простым поднятием виртуалок. К примеру, докер. Большинство Ci на нём построены.
rumasterov: это ваш код будет блокировать выполнение. Используйте асинхронные запросы к базе, вроде fetch async драйвера mysqli и никаких блокировок не будет. Любой блокирующий запрос, не важно где (кроме тредов) будет блокировать исполнение асинхронных операций. Я думаю, что это очевидно даже новичкам.
Оффтоп:
1) Use PSR, Luke
2) Проверка на if (self::$db instanceof self) не нужна. Есть же final классы
3) exit - это плохой вариант, есть throw
4) Ну и естественно, да, синглтон тут не нужен. Использовать несколько соединений на БД, не стандартная, но вполне нормальная практика.
У xdebug профилировка не отображает значение переменных, есть только отображение функций (больше всего кушает PDO, но там всё ок, память чистится), а по шагам бегать что происходит... Ну проще повеситься =)
lilikon: lilikon: если всё же не понятно, то, думаю, это пока не тот уровень за который стоит браться. Самое простое решение в этом случае будет ajax опрос, делается элементарно на чистом js:
Юрий: ну на этом тогда мои полномочия - всё. Но я всё же склоняюсь к тому, что уровень поддержки повысится несоизмеримо с выгодами, учитывая что все подобные манипуляции мы уже проходили в 2000х годах, так что настроен крайне скептически.
Юрий: предлагаю просто протестировать на фейковых файликах, думаю это займёт минут 10, не больше. С другой стороны - что мешает просто отрубить сохранение док-блоков в опкеше? Будет, по-моему, совершенно тот же результат в итоге.