Base script qlua (lua), az algoritmikus kereskedő szerszámok

Köszönöm szépen!
Hiba valami elemi, de ebben az irányban még csak nem is néz ki, azt hittem, nem tudom, néhány fundamentumok adatátviteli funkció main (), és megtalálja a saját sikertelen interneten. Valójában, valamilyen oknál fogva, az emberek írja robotok általában, nem vesz igénybe a funkció main () függvény és OnInit (), bár, ha jól értem, ez elég fontos a végrehajtási sebesség.

Szívesen! Én rossz elképzelni, hogyan írhat egy robot nélkül fő 🙂 végén ezt a cikket hozzá egy kis mese ez 🙂 Kérjük, olvassa el, remélem, meg fogja érteni, sok mindent.

Miért szükséges függvényt OnInit ()?
ha én írják ugyanezt előtt a fő, nem minden funkció Tipo t = 0, DT1 = os.date ( „* t”), stb Miben különbözik ez a felírt a OnInit ()? példa lehet?

A OnInit funkció telt el a teljes elérési utat a script (ha ez szükséges), még akkor sem, például a használat CreateDataSource funkciót a szervezetben a forgatókönyvet, más funkciója van a szervezetben a script nem fog működni, de nem tudom, az összes listát. Itt általában kell beszélni könnyebb, ha van elég a funkciókat, hogy van, akkor nem bonyolítja az életét 🙂 Én személy szinte soha nem használja ezt a funkciót.

Szia, Dmitry. Nem igaz az, CreateDataSource úgynevezett normális és anélkül, hogy a OnInit, mint más kérdésekben, és a többi tulajdonságot említeni ebben a dokumentumban.

Üdvözlünk!
Funkció alvás minden megfelelően működik, akkor megáll a menet, ahol a szolgáltatást nyújtják. Fő feladata - az egyik áram (külön a föld), az összes funkció, hogy hívják a fő funkciója működik, csak kívül a fő stream.
Az összes többi - a többi adatfolyam (a fő stream a terminál).
Kitüntetések alvás funkció, amit javasol, hogy ha hívja az alvó processzor leállítja a feldolgozást áramlás, ami által okozott ezt a funkciót, és a lehetőség, akkor töltse be a ellenkezőleg ezt az áramot. Ahhoz, hogy megértsük, mit jelent, ezt a szkriptet:

Ami a terhelést a CPU egyetértek. Valóban, ez növeli sokszor.
Nem értem, a flow - akkor még egyszer? A terminál számára mind egyetlen áramban, fő - egy másik. Mi a helyzet a funkciókat hívott fő? Általában az összes többi funkció a végén okozta fő. És ők, ha jól értem, a végrehajtása az ugyanazon a szálon, mint maga a végberendezés.
Egyszer volt viszonya - írta a forgatókönyvet, és valamilyen oknál fogva, az alvás nem gyakorolják a hívott függvény. Ezért írta. Ki vezette a két lehetőséget - a különbség nem látható, de a terhelés a processzort. Úgy tűnik, míg én valami baj van.
Általában egyetértek azzal, hogy az én verzióm jobb, ha nem használja.

A terminál saját maga és valamennyi a visszahívás script funkciók működnek egy szál, hogy a szkript némi intenzív számításokat, és így a terminál nem „lógott”, a fejlesztők úgy történik, hogy a fő funkciója létrehoz egy külön téma, hogy nem nem gátolja a fő áramlási terminál. Megmagyarázni, hogy a számla a funkciók hívott fő, hogy ugyanaz a példa:

Ha elkezd, akkor láthatjuk a Feladatkezelőben, hogy a CPU-használat óta nőtt használt fő álmodban, de a terminál egyidejűleg reagál a felhasználó, mert alvó végezzük egy külön áramot a végberendezés (hívott a fő). De ha abbahagyja a script, hogy fogják hívni alvás nem egyetlen fő áramlási és főleg, ahogy korábban írtam, a minden callback függvények végzik a fő stream és OnStop sem kivétel. Fontos, hogy megértsük, a következő, a funkció - egy utasítás beírja a tárolóba, önmagában nem csinál semmit. Amikor a terminál fut egy script, a terminál a forgatókönyvet, a fő funkciója, hogy tudja, hogy meg kell hozzon létre egy külön main stream, létrehozza azt, és elkezdi, hogy végezze el az összes utasítást írt a fő, vagyis Minden script saját fő téma. Ugyancsak, inicializáló szkript néz terminál, amelynek funkciója On-script, és tárolja azokat, hogy a visszahívási funkció nem más, mint az előfizetés eseményekre a terminál.
És a terminál működik a saját szálában, párhuzamos a fő szál fut szkriptek, hirtelen a terminál van esemény, mint a példánkban a felhasználó megnyomja a „Stop”, a terminál tudja, hogy a szkriptek regisztrálhatnak az esemény segítségével OnStop funkciók terminál már tudja, hogy megakadályozza, hogy egy script feliratkozott erre az eseményre, és végrehajtja az utasításokat írt OnStop funkciót, és végrehajtja azt őket a patak, és a fő téma, és továbbra is dolgozhat párhuzamosan gyanítva semmit. De míg a végrehajtó OnStop megváltoztatta a globális változó távon, míg a ciklus leáll, a fő funkciója az, hogy kövesse az utasításokat, hogy az előírt, az áramlás fő semmi mást nem tett, arra a következtetésre jutott, és ezzel befejezte a forgatókönyvet, mert a script ez az áramlás fő .
Világossá vált?

Dmitry, köszönöm szépen a részletes választ. Minden nagyon világossá vált!