ugrás a tartalomhoz

Archívum - Már 8, 2014 - Fórum téma

Leggyorsabb kommunikáció Javascript és asp.net szerveroldal közt

vary88 · 2014. Már. 8. (Szo), 12.11
Sziasztok, a következő problémát szeretném megoldani;

Van egy játéktér, rajta 9 játékos. Mindenki irányítja a saját kis elemét (div) a képernyőn WSAD gombok segítségével. A lényeg az, hogy nekem (mint játékosnak) mindig aktuális képet kell, hogy kapjak a többi játékos aktuális pozíciójáról. Ennek érdekében folyamatosan küldök ajax kéréseket a szervernek (az adatok json-ben mennek át), ami a MemoryCache-ből kiolvassa a játékosok koordinátáit, és visszaküldi a kliensnek válaszként, hogy az befrissíthesse a képernyőn lévő többi játékos margin-left és margin-top -ját.

Az eredmény pedig elég változó. Van amikor nagyon szépen (szinte) élő képet ad a valóságról, van amikor meg tizedmásodpercek is eltelnek.
Nem értem, hogy minek köszönhető ez az ingadozás, és azt se tudom, hogy ezért a kliensoldal a felelős, vagy a szerveroldal. Nagyon minimális adatról van szó, a performancia érdekében csak egyszerű string-et küldök át json-ben, tehát még csak objektumot se kell serializálni a folyamat során.

Van valami tippetek arra, hogy miért ingadozik ennyire? Ez valami protokollbeli jelenség lehet sztem, csak nincsenek ehhez kellő mélységű ismereteim.
 

lap megnyitása lapon bellül

lekszikov · 2014. Már. 8. (Szo), 10.18
Sziasztok nekem egy olyan kérdésem lenne hogy, lenne egy weboldal amiben egy olyan lapot szeretnék megnyitni ami Ip-én keresztül kapcsolódik a gépemhez, de ha a gépem nem érhető el akkor üzenettel jelezné hogy jelenleg nem elérhető.

pl. ha üzemel a gép akkor a fájl bekérése után megjelenik a tartalom mondjuk videó stream de ha a gépem nem üzemel akkor ne hibát írjon ki hanem azt hogy az adás átmenetileg nem üzemel nézz vissza később.

Ezt hogy lehetne meg oldani vagy van e erre valami megoldás?
Segítséget előre is köszönöm.
 

Globális változók és osztályok

Hidvégi Gábor · 2014. Már. 8. (Szo), 10.09
A múltkor volt egy kérdés globális változókkal kapcsolatban, és mivel mindenki egyöntetűen azt állítja, hogy kerüljük a használatukat, utánaolvastam, milyen problémákat okozhatnak (mivel nekem sem volt rájuk nagyon szükségem eddig).

A kérdésre adott válaszban le is írtam a lényeget:
A baj az velük, hogy változók, azaz bárki átírhatja őket, így az őket használó függvények által visszaadott érték is változhat.
Tehát egy globális változót használó függvény visszatérési értéke – ugyanazokkal a paraméterekkel meghívva – az idő folyamán változik, ha a változót átírjuk, ezt angolul úgy hívják, hogy nem reentrant.

Továbbgondolva a dolgot, szöget ütött a fejembe, hogy van egy nagyon hasonló szoftvertervezési megoldás – bár jellegéből adódóan kisebb hatáskörű: az osztályok vagy objektumok belső változói. Ha egy metódus ilyen változót használ, akkor a végeredmény pontosan ugyanaz lesz, mint a fenti esetben, azaz az idő előrehaladtával más és más eredményt ad vissza a változó függvényében.

A kérdésem a következő: ezzel kinek mi a tapasztalata? Ha problémát okoz, hogyan lehet elkerülni?