質問するログイン新規登録

質問編集履歴

1

解決したのでコードを追記しました

2019/04/22 16:14

投稿

SeiMei
SeiMei

スコア16

title CHANGED
File without changes
body CHANGED
@@ -1,3 +1,29 @@
1
+ ###解決しました
2
+ ```C#
3
+ /// <summary>
4
+ /// メソッドを指定した一定の間隔で呼び出すタイマー
5
+ /// actionに呼び出したいメソッドを入れる
6
+ /// funcに終了する条件式を入れる
7
+ /// </summary>
8
+ /// <param name="interval">ミリ秒単位で呼び出し間隔を指定</param>
9
+ /// <param name="action">呼び出したいメソッドを入れる</param>
10
+ /// <param name="func">trueになったら終了。初期状態がtrueの場合タイマーは実行されない</param>
11
+ private async void Timer(int interval, Action action, Func<bool> func)
12
+ {
13
+ if (!func()) await Task.Delay(interval);
14
+ while (!func())
15
+ {
16
+ action();
17
+ await Task.Delay(interval);
18
+ }
19
+ }
20
+ ```
21
+ ```C#
22
+ Timer(1000, メソッド, () => 条件式);
23
+ ```
24
+
25
+ ### 以下、解決前に書いた質問
26
+
1
27
  ### 前提・実現したいこと
2
28
 
3
29
  汎用のタイマーを作ろうとしています。