The UNIX and Linux Forums  


Go Back   UNIXおよびLinuxフォーラム > オペレーティングシステム > HP - UX
Googleのunix.com



HP - UX HP - UXの(ヒューレットパッカードのUNIX )のHewlett - PackardのUNIXオペレーティングシステムの独自の実装、システムの五に基づい

その他のUNIXおよびLinuxフォーラムトピックは参考にすること
スレッド スレッドスターター フォーラム 返信 最後の投稿
変数には、クエリの出力を追加する別のクエリで使用するには hazno シェルプログラミングとスクリプティング 0 2009年3月24日 08:52午後
のMac OS X :なぜMacをスリープしない可能性がありますや睡眠モード滞在 アイボット OS XサポートのRSS 0 2009年3月19日 10:50午後
UNIX時刻をlocaltimeの変換 AshishK UNIXの詳細&エキスパートのためのユーザー 2 2007年10月30日 10:22午前
Perlの+ localtimeの( ) Optimus_P シェルプログラミングとスクリプティング 3 2003年7月9日 06:32午後
眠る アンナ UNIXのダミー質問と回答のため 5 2001年7月11日 12:52午前

Reply
English Japanese Spanish French German Portuguese Italian Dutch Swedish Russian Norwegian Hungarian Hebrew Danish Bulgarian Greek を搭載 Powered by Google
 
LinkBack スレッドツール このスレッドを検索 評価: Thread Rating: 1 votes, 4.00 average. 表示モード
  #1固定リンク)  
Old 2009年6月29日
nsvora nsvora is offline
登録ユーザー
  
 

参加日: 2009年6月
投稿: 2
睡眠& localtimeのクエリ

やあ、
私は、アプリケーションとi HPUXクエリ睡眠& localtimeのシステムコールについてHPUXでいたに取り組む。
ここに我々はしているコードです:

定数uint32_t WAKE_INTERVAL_SEC ( 30 * 60 ) ;
一方( )に該当(

/ /を何時だとして下さい
時間( & currentTime ) ;

/ /場合は、現在9:20ウェイクアップされてクロックを30分、つまり10分後にスレッドをウェイクアップ揃え、
/ /場合は9:05現在、 25分後に目を覚ます。
/ /この30分で、残り数秒の計算。
sleepTime \u003d WAKE_INTERVAL_SEC - ( currentTime % WAKE_INTERVAL_SEC ) ;
( 1 ) (

( sleepTime )睡眠;

/ /定期的に働くか
tptr \u003d localtimeの( & currentTime ) ;

もし( 12 \u003d\u003d tptr - > tm_hour & & tptr - > tm_min < WAKE_INTERVAL_MIN )

/ / 12:00に行われる作業



期待の動作:
上記のコードのように、私たちは30分ごとに、いくつかの作業を行うことが12日とする場合には、時間が午前12:30の間でもあるし、昼の仕事をするにも期待しています。

実際の動作:
それは正常に動作時間の大半。しかし、一部の回、 12:30寝る前にして、ロジックが失敗し、昼は仕事では数秒、終了しているようだ。 12:30以降のスレッドで目が覚めたしているため、作業条件satisify正午できない私は、正午の作業条件を理想的には失敗し、期待している。 (トレースのsyslogには定期的な仕事は12:30に開始しているが、ログ自体を示していると私はしばらく時間を早期に目を覚ますことがある)睡眠を疑う

質問:
-スケジュールの時間寝る前に目を覚ますことができます( SIGALRM以外) ?ここで目を覚ますことは睡眠時間をスケジュールする前に、他の条件はありますか?
- localtimeの比較を返すために間違った時刻を使用することはできますか?
-それは内部的に行われていますいくつかの時間を調整可能(内部クロックなど漂流)睡眠の結果は、 2回目よりも早く、現地時間のいくつかの理由で、何らかの調整を行う見通しを覚醒されることがありますか?

この点に関しては任意の入力を感謝しています。

ありがとう&よろしく、
nsv
  #2固定リンク)  
Old 2009年6月29日
ジムマクナマラ jim mcnamara is offline Forum Staff  
...@...
  
 

参加日: 2004年2月
場所: NM
投稿数:5789
なぜcronを使用するかはあなたのコードをスケジュールするか?正確には、適切なタイミングでこれらのコマンドやスクリプトを実行するように構築されています。

さらに、睡眠( 1 )は正確に1秒間スリープ状態に保証されています。
  #3固定リンク)  
Old 2009年6月30日
nsvora nsvora is offline
登録ユーザー
  
 

参加日: 2009年6月
投稿: 2
こんにちは、ジム、
回答いただきありがとうございます。
ロジックは、スレッドがスリープ状態に必要な時間をチェックしている実際のスレッドスケジューラをベースに、いつでも受けをすることができますので、その30分間隔で整列した。

については、と
nsvora
  #4固定リンク)  
Old 2009年7月1日
ジムマクナマラ jim mcnamara is offline Forum Staff  
...@...
  
 

参加日: 2004年2月
場所: NM
投稿数:5789
私はこの明確に伝えるようにした:

あなたが正確にどのくらい睡眠を保証することはできません。汚物を追加するには、いくつかの( )を秒単位で計算を1つの方法か、別の要因ファッジは、完全にすべての時間を仕事に行くのではない-があると仮定している例は、 のPOSIX 対応時間-すなわち、うるう秒。 :

コード:
calculate duration of sleep:
time_t how_long_to_sleep=1800;
how_long_to_sleep-= time(NULL) % 1800;
sleep(!how_long_to_sleep ? 1800 : how_long_to_sleep);

復帰後の時間のテスト:

コード:
time_t now=time(NULL);
now=now % 1800;
if( now < 2 && now > 1797)
   // sleep period ended close enough
else
  // sleep period is off by too much
fi

あなたも)は、これもまたミリ秒の値は、最小限のものにしている細かい粒usleep (値を試す可能性がある。それとして長い。これよりも高い優先順位を1つのジョブを実行している例。
Reply

ブックマーク

スレッドツール このスレッドを検索
このスレッドを検索

高度な検索
表示モード このスレッド
このスレッド

投稿ルール
あなた ことができない。 新しいスレッドを投稿
あなた ことができない。 返信の投稿
あなた ことができない。 添付ファイルの投稿
あなた ことができない。 自分の投稿を編集

BBコード なる 〜の上に
スマイリー なる 〜の上に
[イメージ] コードは オフ
HTMLコードは、 オフ
トラックバック なる 〜の上に
ピングバック なる 〜の上に
Refbacks なる 〜の上に




すべてGMT -4です。現在の時刻は 10:56午後


提供: vBulletin、著作権© 2000 - 2006、Jelsoft企業株式会社。言語翻訳による電源
vBCredits v1.4著作権© 2007 - 2008 、 PixelFXスタジオ
は、 UNIXおよびLinuxフォーラムのコンテンツ著作権© 1993 〜 2009 。すべての権利を管理しReserved.Ad RedTyger

コンテンツ関連のURLで vBSEO 3.2.0