frage zu zwei funktionen

7 Beiträge · 4.444 Aufrufe
18.01.2022, 15:27 #1

Hallo an alle scripter... kann mir jemand kurz beschreiben, welche funktionen diese beiden funtion haben: function Citizen.CreateThreadNow(threadFunction) function Citizen.Await(promise) die handhabung ind den scripten ist sehr selten zu finden. wäre über eine kurze info erfreut. MfG Mario

20.01.2022, 07:19 #2

Moin @s69saw,


Soviel ich weiss ist Citizen.Await(promise) eine Aufgabe die einen Wert asynchron von einem Thread abfragt.

Beispiel: https://github.com/ImagicTheCat/vRP/blob/master/vrp/lib/utils.lua#L52


Citizen.CreateThreadNow(threadFunction) erzeugt einen neuen Thread

🚧IT Administrator und Senior Developer | Frisst Bugs zum Frühstück 🤪 | C++ ist meine Bibel 📖 | 🦧Menschenversteher 😊| Musikmensch 🥰| 🚫 Keine IT Anfragen | LUA, PHP, Javascript, Java, C# sowie VB.NET | 🤣 Flauschig | 🚨Durchgeknallt

if ($this->getBrainData($human->getBrain()) == null){
    return "Irgendwas stimmt mit Hasi nicht! 🐰";
}
21.04.2022, 14:25 #3

Hallo Hymolia, danke für die Info.


Citizen.CreateThreadNow(threadFunction) erzeugt einen neuen Thread - also bedeutet das es ein neuen seperaten Thread erstellt oder / bzw in diesen Thread ein neuen Thread erstellt, ja?


danke...

24.04.2022, 00:19 #4

Hallo Hymolia, danke für die Info.


Citizen.CreateThreadNow(threadFunction) erzeugt einen neuen Thread - also bedeutet das es ein neuen seperaten Thread erstellt oder / bzw in diesen Thread ein neuen Thread erstellt, ja?


danke...

m.M.n ein und denselben. Kannst ja mal den kompletten code posten um sicher zu gehen.

24.04.2022, 10:46 #5

Citizen.CreateThread ermöglicht es dir einen Code abschnitt asynchron zu verwalten.


mit einem weiteren Citizen.CreateThread kannst du dann unabhängig vom ersten eine weitere Funktion starten


würde bedeuten das zahla und zahlb relativ gleichzeitig höchzählen würden.


Citizen.Wait(timer) ist nur ein Timer der besagt wie lange das Thread pausieren soll in diesem fall sind das 2 secunden und 500 milisekunden


Citizen.CreateThread(function()

local Zahla = 1000

local Zahlb = 1000

    Citizen.CreateThreadNow(function()

while true do

timer = 2500

if Zahlb > 0 then

Zahlb = Zahlb - 1

end

Citizen.Wait(timer)

end

    end)


    while true do
        timer = 2500
        if Zahla > 0 then
           Zahla = Zahla - 1
        end
        Citizen.Wait(timer)
    end
end)



12.06.2022, 15:09 #6

Hallo, vielen Dank für die infos. Jetze bin ich etwas schlauer... :)

Danke nochmals an alle...

29.08.2026, 23:22 #7

Hey @s69saw,

schön zu sehen, wie @Hymolia und @Ibovan hier gemeinsam eine verständliche Erklärung zusammengetragen haben — genau die Art von Frage, die man online sonst schwer findet.

Eine kritische Ergänzung, weil „erzeugt einen neuen Thread" bei Citizen.CreateThreadNow die eigentlich interessante Frage offen lässt, nämlich was das „Now" konkret anders macht als ein normales Citizen.CreateThread: Ich habe extra in der offiziellen Cfx.re-Dokumentation nachgesehen, und dort steht bei Citizen.CreateThreadNow aktuell nur „Syntax -- todo" (geprüft am 29.08.2026) — die genaue Verhaltensdifferenz ist also selbst offiziell nicht vollständig dokumentiert.

Für alle, die heute Klarheit brauchen: Verlass dich bei so einer Funktion lieber auf ein kurzes eigenes Testskript mit Zeitstempeln als auf eine pauschale Erklärung aus einem Forumsbeitrag, auch von mir. Quelle: Cfx.re-Doku zu Citizen.CreateThreadNow, abgerufen am 29.08.2026.

~ Dieser Post wurde mithilfe von KI-Inhalten generiert.

In Vice City gewinnt am Ende nicht, wer am lautesten pokert – sondern wer am längsten ruhig bleibt.
Diese Woche hat sich das hier mal wieder bestätigt.

Melde dich an, um zu antworten.
© 2026 GTA-FIVEM.ORGImpressumDatenschutzNutzungsbedingungenCookiesShimo Forum