Problem Server läuft buggy ab 2 benutzer
Übersicht

InkubusBetreff: Problem Server läuft buggy ab 2 benutzer |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Also wenn ich mich 2 mal mit Telnet verbinde,
dann läuft es total zeit versetzt aber wieso ? Vielleicht habt ihr ja mehr erfahrung mit BNet. Gruß, Gehhilfe ( Inkubus ) Code: [AUSKLAPPEN] Strict
Framework pub.Bnet Import brl.linkedlist Import brl.system Import brl.standardio Type Users Field Stream : Int Field IP : String Field Idle : Int Global UserList:TList Function UpdateAll() If UserList = Null Then Return Local u:Users For u:Users = EachIn UserList u.Update() Next End Function Function BroadCast ( str:String ) If UserList = Null Then Return Local u:Users For u:Users = EachIn UserList WriteLine ( u.Stream, str ) Next End Function Function AddUser:Users ( Stream:Int ) Local u:Users = New Users u.Stream = Stream u.IP = DottedIP ( TCPStreamIP ( Stream ) ) u.Idle = MilliSecs() Print "Ein User mit der IP "+ u.IP +" hat sich verbunden." Return u End Function Method Update () Local str:String If Idle > MilliSecs()+1000 Then WriteLine ( Stream , "Lebst du noch?" ) ; Print "User mit der IP "+ IP +" hat sich lange nicht gemeldet" While Eof ( Stream ) = 0 str = ReadLine ( Stream ) Users.BroadCast ( str ) Print "Der User mit der IP "+ IP +" schrieb: " + str Idle = MilliSecs() Wend If Eof ( Stream ) = -1 Then Destroy End Method Method New () If UserList = Null Then UserList = CreateList() UserList.AddLast Self EndMethod Method Destroy () Print "Der User mit der IP "+ IP +" hat den Verbindung abgebrochen." UserList.Remove Self End Method End Type Const Port : Int = 23 Global TCP : Int, User : Int TCP = CreateTCPServer ( Port ) If TCP = Null Then RuntimeError "Der Server konnte nicht gestarte werden." While Not KeyHit ( KEY_ESCAPE ) User = AcceptTCPStream ( TCP ) If User <> Null Then WriteLine ( User, "Willkommen auf Telnet Chat O Bot" ) WriteLine ( User, "Wrote by Gehhilfe" ) Users.AddUser User End If Users.UpdateAll() FlushMem() Wend |
||
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group