rendered paste bodyGlobal NewList SendNetworkQueue.s()
Global bThreadSendNetworkQueue.b = #True
Define lMutexSendNetworkQueue.l = CreateMutex()
Procedure ThreadStartSendNetworkQueue()
Shared lMutexSendNetworkQueue
Repeat
While CountList(SendNetworkQueue())
Delay(2000)
LockMutex(lMutexSendNetworkQueue)
FirstElement(SendNetworkQueue())
If Len(SendNetworkQueue()) > 0
Debug "Out: " + SendNetworkQueue()
EndIf
DeleteElement(SendNetworkQueue())
UnlockMutex(lMutexSendNetworkQueue)
Delay(2000)
Wend
Until bThreadSendNetworkQueue = #False
EndProcedure
Procedure ThreadEndSendNetworkQueue()
bThreadSendNetworkQueue = #False
EndProcedure
Procedure ThreadAddNetworkString(sString.s)
Shared lMutexSendNetworkQueue
LockMutex(lMutexSendNetworkQueue)
AddElement(SendNetworkQueue())
SendNetworkQueue() = sString
UnlockMutex(lMutexSendNetworkQueue)
EndProcedure
CreateThread(@ThreadStartSendNetworkQueue(), #Null)
Debug "Belade Stack"
Repeat
Define sString.s = Str(Random(1000000))
ThreadAddNetworkString(sString)
Debug "Add: " + sString
Delay(100)
Until Random(8) = 1
Debug "Stack Beladen Beendet"
Repeat : ForEver