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

回答編集履歴

3

元のコードでも戻り値がある場合もミューテックスがリリースされていたので戻した。

2020/12/24 02:20

投稿

marusa
marusa

スコア17

answer CHANGED
@@ -71,7 +71,6 @@
71
71
  try
72
72
  {
73
73
  var result = func(arg);
74
- mutex.ReleaseMutex();
75
74
  return result;
76
75
  }
77
76
  finally
@@ -99,4 +98,7 @@
99
98
  ```
100
99
 
101
100
  追記
102
- 返り値がある場合ミューテックスがリリースされてない状態だったので修正。
101
+ 返り値がある場合ミューテックスがリリースされてない状態だったので修正。
102
+
103
+ 追追記
104
+ returnがあってもミューテックスはリリースされるのでもう一度修正。

2

返り値がある場合ミューテックスがリリースされてない状態だったので修正。

2020/12/24 02:20

投稿

marusa
marusa

スコア17

answer CHANGED
@@ -71,6 +71,7 @@
71
71
  try
72
72
  {
73
73
  var result = func(arg);
74
+ mutex.ReleaseMutex();
74
75
  return result;
75
76
  }
76
77
  finally
@@ -95,4 +96,7 @@
95
96
  }
96
97
  }
97
98
  }
98
- ```
99
+ ```
100
+
101
+ 追記
102
+ 返り値がある場合ミューテックスがリリースされてない状態だったので修正。

1

ReadWriteClassのmutexが残っていたので削除

2020/12/24 01:05

投稿

marusa
marusa

スコア17

answer CHANGED
@@ -13,7 +13,6 @@
13
13
  {
14
14
  public class ReadWriteClass
15
15
  {
16
- private static Mutex mutex = new Mutex(false, "sample");
17
16
  public T GetData<T>(string path)
18
17
  {
19
18
  string jsonData = File.ReadAllText(path);