[PR] この広告は3ヶ月以上更新がないため表示されています。
ホームページを更新後24時間以内に表示されなくなります。
Sub MainWnd_CommandButton1_Click()フリーズするのは、メッセージループに戻れないからです。
While(1)
Sleep(1)
Wend
End Sub
#consoleスレッド関数は以下の形をとります。名前は任意です。
#include<vcrt71.sbp>
Dim hThre As HANDLE
Dim ID As *DWord
Dim code As DWord
'スレッド関数
Function Thre (lp As DWord) As DWord
'スレッドの処理をここに書きます。
End Function
'スレッドを作る
hThre = CreateThread(ByVal NULL , 0 , AddressOf(Thre) , 0 , 0 , ID)
'スレッド終了まで待つ
GetExitCodeThread(hThre , code)
While code = STILL_ACTIVE
Sleep(1)
GetExitCodeThread(hThre , code)
Wend
Function Thre (lp As DWord) As DWordCreateThread関数はヘルプにあります。難しいことはありません。
'スレッド関数これはわざわざスレッド関数にする意味はありません。むしろ、スレッド化したことで悪くなっています。
Function Thre (lp As DWord) As DWord
Dim timer As DWord
Dim t_st As *tm
Dim n As Long
For n = 0 To 10
time(VarPtr(timer))
t_st = localtime(VarPtr(timer))
printf(Ex"%s",asctime(t_st))
Sleep(1000)
Next
End Function