この記事は2019年04月28日に投稿しました。
目次

新・標準プログラマーズライブラリ なるほどなっとく C#入門
- 作者: 出井秀行
- 出版社/メーカー: 技術評論社
- 発売日: 2019/03/16
- メディア: 単行本(ソフトカバー)
- この商品を含むブログを見る
1. はじめに
こんにちは、iOSのエディタアプリPWEditorの開発者の二俣です。
今回は業務で使用しているC#でタイマーを使用する方法についてです。
2. C#でタイマーを使用する
C#のタイマーはいくつかあるようです。
今回はSystem.Threading.Timer使用した方法を紹介します。
実装例
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Threading; // Timer, TimerCallbackを使用するため追加します。 namespace CSharpTimer { class Program { static void Main(string[] args) { // タイマー処理を開始します。 var program = new Program(); program.StartTimer(); } /** * @brief タイマー処理を開始します。 */ private void StartTimer() { Timer timer = null; try { // タイマーにより呼び出される処理を設定します。 var timerDelegate = new TimerCallback(OnTimerCallback); // タイマーを生成し、開始します。 // 例では1000ミリ秒=1秒間隔で処理を呼び出します。 timer = new Timer(timerDelegate, null, 0, 1000); // 何らかのキーが押下されるまで待ちます。 Console.ReadLine(); // タイマーを停止します。 timer.Change(Timeout.Infinite, Timeout.Infinite); } // タイマーの後処理を行います。 finally { if (timer != null) { timer.Dispose(); } } } /** * @brief タイマーにより呼び出された時の処理を行います。 * * @param [in] state ステート */ private void OnTimerCallback(object state) { // 現在時刻を表示する。 Console.WriteLine(DateTime.Now); } } }
3. おわりに
今回のタイマーは、前回紹介した
のHTTP通信で一定間隔でデータを取得する処理に利用しようと思います。

作って覚えるVisual C# 2017 デスクトップアプリ入門
- 作者: 荻原裕之,宮崎昭世
- 出版社/メーカー: 秀和システム
- 発売日: 2017/06/30
- メディア: 単行本
- この商品を含むブログを見る
紹介している一部の記事のコードはGitlabで公開しています。
興味のある方は覗いてみてください。
私が勤務しているニューラルでは、主に組み込み系ソフトの開発を行っております。
弊社製品のハイブリッドOS Bi-OSは高い技術力を評価されており、特に制御系や通信系を得意としています。
私自身はiOSモバイルアプリやウィンドウズアプリを得意としております。
ソフトウェア開発に関して相談などございましたら、お気軽にご連絡ください。
また一緒に働きたい技術者の方も随時募集中です。
興味がありましたらご連絡ください。
EMAIL : info-nr@newral.co.jp / m-futamata@newral.co.jp
TEL : 042-523-3663
FAX : 042-540-1688