windowsアプリなどでポーリングするとアプリが応答なしになったりCPU負荷が上がるからダメってことだったが

サブルーチンコールの代用で
set グローバル変数 to 1

system グローバル変数 = 1
何かアクション
set グローバル変数 to 0

というやり方ってありなの?