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

質問編集履歴

2

## threading.Lock()を使用

2021/07/02 14:33

投稿

Yuiti628
Yuiti628

スコア71

title CHANGED
File without changes
body CHANGED
@@ -58,6 +58,29 @@
58
58
  ```
59
59
 
60
60
 
61
+ ## threading.Lock()を使用
62
+
63
+ ```pythorn
64
+ #main
65
+
66
+ #####
67
+ #####tkinterにのフォームを作成するクラス
68
+ #####
69
+
70
+ if __name__ == "__main__":
71
+
72
+ # 2重起動防止
73
+ mutex = threading.Lock()
74
+ mutex.acquire()
75
+ # 初期状態の調整 (ファイルの確認など)
76
+ ff.ConfigFile()
77
+
78
+ root = ThemedTk()
79
+ app = Application(master=root)
80
+ app.mainloop()
81
+ mutex.release()
82
+ ```
83
+
61
84
  どちらも上手くいきませんでした、、
62
85
 
63
86
  一般的にはどのような方法を使うのが普通なのでしょうか?

1

実行ファイルを追加

2021/07/02 14:33

投稿

Yuiti628
Yuiti628

スコア71

title CHANGED
File without changes
body CHANGED
@@ -1,6 +1,7 @@
1
1
  #やりたい事
2
- WindowsとMac両方に使える方法で多重起動を防止させたい。
2
+ WindowsとMac両方に使える方法で実行ファイルの多重起動を防止させたい。
3
3
 
4
+
4
5
  # 困っている事
5
6
  wxPythonではwx.SingleInstanceChecker(self.GetTitle())とかで多重起動を防止できようですが、tkinterで既にGUIは作成してしまいました。
6
7
  Tkinterでも防止する方法は何があるのでしょうか?