Sign in to follow this  
Followers 0
Domi2Show

MultiThreading Example

3 posts in this topic

#1 ·  Posted (edited)

Hey Forum,

I have tried to get a easy MultiThreading.

I don't tested it so much.

_ThreadStart("_Thread1")
_ThreadStart("_Thread2")

MsgBox(0, "", "Mainscript")

Func _Thread1($vDummy)
    MsgBox(0, "", "Thread 1")
EndFunc   ;==>_Thread1

Func _Thread2($vDummy)
    MsgBox(0, "", "Thread 2")
EndFunc   ;==>_Thread2

Func _ThreadStart($sFunctionName)
    Local $h1, $h2, $h3 = DllStructCreate("hwnd[1]"), $h4 = DllStructGetPtr($h3)

    $h1 = DllCallbackRegister($sFunctionName, "int", "int")
    $h2 = DllStructCreate("int")
    $h3 = DllCall("Kernel32.dll", "hwnd", "CreateThread", "ptr", 0, _
            "int", 0, _
            "ptr", DllCallbackGetPtr($h1), _
            "int", 0, _
            "int", 0, _
            "ptr", DllStructGetPtr($h2))
    DllStructSetData($h3, 1, $h3[0], 1)
    DllCall("Kernel32.dll", "int", "CloseHandle", "hwnd", DllStructGetData($h3, 1, 1))
EndFunc   ;==>_ThreadStart

Download: Example.au3

Edit: Sorry for my English, I am German :x

greets,

Domi2Show

Edited by Domi2Show

Share this post


Link to post
Share on other sites



You won't get much further than MsgBox before your script falls apart. I've explained -> <- why multithreading 'seems' to work, but in reality the script will crash if you try to do anything else. Its not built for multithreading. If you need multithreading - go for multiprocessing instead. (Start up another script)

Sure, me, trancexx and few select others have successfully created new threads in AutoIt - but that's only with machine code, or with API function calls that take only one parameter, not with script code.

Share this post


Link to post
Share on other sites

Ok thank you :x

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now
Sign in to follow this  
Followers 0