IGLib  1.7.2
The IGLib base library EXTENDED - with other lilbraries and applications.
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Events Macros
IG.Forms.TestTcpMultiThreadedServer Class Reference
+ Collaboration diagram for IG.Forms.TestTcpMultiThreadedServer:

Public Member Functions

 TestTcpMultiThreadedServer ()
 Constructor with default IP address and port. More...
 
 TestTcpMultiThreadedServer (string IP, int port)
 
void StartServer ()
 Launches a loop that listens for connection requests and in response launches servers for them. More...
 

Public Attributes

int Port = 8000
 
string IPstr = "127.0.0.1"
 
bool SingleClient = false
 
int MaxClients = 20
 
int SleepBetweenLaunches = 200
 Maximal permitted number of clients. More...
 
bool Stop = false
 Minimum time in ms between successive launches. More...
 
int ID = 0
 Setting this to true makes the server loop exit. More...
 
string Name =""
 
Thread ListenerThread = null
 

Private Member Functions

void ServerThreadFunc ()
 
void ListenerLoop ()
 

Private Attributes

int NumLaunched =0
 
TestTcpServer LastServer =null
 
ArrayList Servers =new ArrayList()
 
Thread LastServerThread
 
object ServerLaunchLock = new object()
 
TcpListener listener = null
 
TcpClient client = null
 
TcpClient ClientForServer =null
 
int LaunchingServer = 0
 

Static Private Attributes

static int numinstances = 0
 

Constructor & Destructor Documentation

IG.Forms.TestTcpMultiThreadedServer.TestTcpMultiThreadedServer ( )
inline

Constructor with default IP address and port.

IG.Forms.TestTcpMultiThreadedServer.TestTcpMultiThreadedServer ( string  IP,
int  port 
)
inline

Member Function Documentation

void IG.Forms.TestTcpMultiThreadedServer.StartServer ( )
inline

Launches a loop that listens for connection requests and in response launches servers for them.

Referenced by IG.Forms.server_program.Main().

void IG.Forms.TestTcpMultiThreadedServer.ListenerLoop ( )
inlineprivate

Member Data Documentation

int IG.Forms.TestTcpMultiThreadedServer.Port = 8000
string IG.Forms.TestTcpMultiThreadedServer.IPstr = "127.0.0.1"
bool IG.Forms.TestTcpMultiThreadedServer.SingleClient = false
int IG.Forms.TestTcpMultiThreadedServer.MaxClients = 20
int IG.Forms.TestTcpMultiThreadedServer.SleepBetweenLaunches = 200

Maximal permitted number of clients.

bool IG.Forms.TestTcpMultiThreadedServer.Stop = false

Minimum time in ms between successive launches.

int IG.Forms.TestTcpMultiThreadedServer.ID = 0

Setting this to true makes the server loop exit.

string IG.Forms.TestTcpMultiThreadedServer.Name =""
int IG.Forms.TestTcpMultiThreadedServer.numinstances = 0
staticprivate
int IG.Forms.TestTcpMultiThreadedServer.NumLaunched =0
private
TestTcpServer IG.Forms.TestTcpMultiThreadedServer.LastServer =null
private
ArrayList IG.Forms.TestTcpMultiThreadedServer.Servers =new ArrayList()
private
Thread IG.Forms.TestTcpMultiThreadedServer.ListenerThread = null
Thread IG.Forms.TestTcpMultiThreadedServer.LastServerThread
private
object IG.Forms.TestTcpMultiThreadedServer.ServerLaunchLock = new object()
private
TcpListener IG.Forms.TestTcpMultiThreadedServer.listener = null
private
TcpClient IG.Forms.TestTcpMultiThreadedServer.client = null
private
TcpClient IG.Forms.TestTcpMultiThreadedServer.ClientForServer =null
private
int IG.Forms.TestTcpMultiThreadedServer.LaunchingServer = 0
private

The documentation for this class was generated from the following file: