Я использовал следующий способ для указания порта прослушивания в командной строке:
flask run --host=0.0.0.0 --port=80
То, как вы использовали свой код (app.run
), если я помню правильно, не рекомендуется в текущем выпуске колбы (использовать flask run
для запуска сервера вместо python app.py
).
Вы можете обратиться к этой странице для общего введения.
В моем понимании, новый способ значительно упрощает определение различных портов для различных сценариев.
Насколько я понимаю транзакции SQLite не блокируют базу данных если
EXCLUSIVE
(они DEFERRED
по умолчанию), илиТак любой Вы явно звоните
$dbh->exec("BEGIN EXCLUSIVE TRANSACTION");
или Вы делаете операцию записи (INSERT
/UPDATE
) к DB, прежде чем Вы начнете sleep()
.
Процитировать документацию (шахта акцента):
Транзакции могут быть задержаны, непосредственные, или эксклюзивные. Поведение транзакции по умолчанию задерживается. Задержанный означает, что никакие блокировки не получены на базе данных, пока к базе данных сначала не получают доступ. Таким образом с отложенной транзакцией,
BEGIN
сам оператор ничего не делает. Блокировки не получены до первой операции чтения или операции записи. Первая операция чтения против базы данных создает КОЛЛЕКТИВНУЮ БЛОКИРОВКУ, и первая операция записи создает ЗАРЕЗЕРВИРОВАННУЮ блокировку.