Sanaz Khalili
Sanaz Khalili
خواندن ۱ دقیقه·۱ سال پیش

تعریف متغیر سراسری در کدهای flask

به نام خدا

اگر نیاز باشد تا یک متغیر سراسری در کدهای flask خود تعریف کنیم که مثلا کار شمارش را انجام دهد، نمی توانیم با استفاده از کلمه ی کلیدی global این کار را انجام دهیم. چون کدهای flask که یک اپلیکیشن WSGI است به صورت multi processing کارشان را انجام می دهند.

برای اینکه بتوانیم با وجود این ویژگی، متغیر مناسبی تعریف کنیم، می توانیم از multiprocessing.Value استفاده کنیم.

این Value یک شیئی می سازد که حافظه ی خود را به صورت اشتراکی بین فرزندان پردازش ها به اشتراک می گذارد.

منابع:

https://docs.python.org/3/library/multiprocessing.html#multiprocessing.Value

https://stackoverflow.com/questions/42680357/increment-counter-for-every-access-to-a-flask-view

flaskglobal value in flaskvalue in flask
https://github.com/sanazkhalili - https://www.kaggle.com/skhalili
شاید از این پست‌ها خوشتان بیاید