-1

私はbashスクリプトを作成していて、Whileを使用するには興味深い質問を思いつきました.Whileループを使用すると、これがシステムの負荷CPUにどのように影響するかWhileループはCPUのタクト/サイクルごとに実行/チェックされます-したがって、CPUはアイドル状態ではありません-右? wwwhat() と ww() でピンポン効果を少し加えました - ユーザーからの入力を待っている間、CPU がアイドル状態になることを意味しますか? これがループ (C、C++、Java など) を使用するよりも優れたパフォーマンス ソリューションであるかどうかを知りたいですか?

#!bin/bash


wwwhat(){
read x
if [ "$x" == "y" ]; then echo "Starting WEB SERVER"; service httpd start 2> /dev/null;
echo "Loading web site in 10sec with w3m"
sleep 10
w3m 127.0.0.1
exit
fi
if [ "$x" == "n" ]; then echo "End";
else ww; # ask Y or N
fi
}



sstartw(){
echo;
}


ww(){         #back to wwwhat
echo "y/n?:"
wwwhat;
}


clear
printf "TODAY: "; date;
echo
s="WHOAMI: ";printf "$s " ;whoami;
echo
h="HOSTNAME: "; printf "$h " ; hostname
echo
a="1";
if service httpd status > /dev/null ; then printf "WEB SERVER IS RUNNING";
echo
echo "Loading web site in 10sec with w3m"
sleep 10
w3m 127.0.0.1
fi
if ! service httpd status > /dev/null ; then printf "WEB SERVER IS DOWN";
echo
echo "Do you want to start the WEB SERVER?(y/n)"; wwwhat;
fi 
4

1 に答える 1

0

おっしゃるとおり、bash がユーザー入力を待っている場合、while ループは CPU を消費しません。

于 2013-08-29T14:10:19.007 に答える