IGLib  1.5
The IGLib base library for development of numerical, technical and business applications.
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Events
IG.Lib.WaitFileEventLatenceBase.ExampleLatence Class Reference

Class containing examples for More...

+ Inheritance diagram for IG.Lib.WaitFileEventLatenceBase.ExampleLatence:
+ Collaboration diagram for IG.Lib.WaitFileEventLatenceBase.ExampleLatence:

Public Member Functions

void ExampleBlockCreateRemove (string filePath)
 Monitors the specified file and successively blocks until it is created and then until it is removed. This procedure is repeated twice. More...
 
void ExampleBlockCreateRemove (string filePath, int numSwitches)
 Monitors the specified file and successively blocks until it is created and then until it is removed. More...
 
void ExampleBlockCreateRemove (string filePath, int numSwitches, bool waitDirectory)
 Monitors the specified file and successively blocks until it is created and then until it is removed. More...
 
void TestSpeedBlockCreateRemove (string filePath)
 Test of speed of reaction of file/directory creation and removal blocking waits. A specified number of alternate creations and removals are perfomed in a parallel thread, with specified delay between them. In the main thread, blocking waits are performed waiting for creation/removal in an infinite loop, and it is counted how many events are captured and how many are missed. More...
 
void TestSpeedBlockCreateRemove (string filePath, int numSwitches, int sleepMs)
 Test of speed of reaction of file/directory creation and removal blocking waits. A specified number of alternate creations and removals are perfomed in a parallel thread, with specified delay between them. In the main thread, blocking waits are performed waiting for creation/removal in an infinite loop, and it is counted how many events are captured and how many are missed. More...
 
void TestSpeedBlockCreateRemove (string filePath, int numSwitches, int sleepMs, bool waitDirectory)
 Test of speed of reaction of file/directory creation and removal blocking waits. A specified number of alternate creations and removals are perfomed in a parallel thread, with specified delay between them. In the main thread, blocking waits are performed waiting for creation/removal in an infinite loop, and it is counted how many events are captured and how many are missed. More...
 

Protected Attributes

IWaitFileEvent _creation = null
 
string ExamplePath
 
bool IsDirectory
 
bool TthreadStopped
 
int NumIterations
 
int SleepTimeMs
 
double TestTime
 
object fileOperationLock = new object()
 Lock for file creation and removal operations. More...
 

Properties

virtual IWaitFileEvent Creation [get]
 
virtual IWaitFileEvent Removal [get]
 

Private Member Functions

void AlternateCreateRemoveExample ()
 Alternately creates and removes the specified file or directory in its own thread. More...
 

Private Attributes

object lockExample = new object()
 
IWaitFileEvent _removal = null
 

Detailed Description

Class containing examples for

Member Function Documentation

void IG.Lib.WaitFileEventLatenceBase.ExampleLatence.ExampleBlockCreateRemove ( string  filePath)
inline

Monitors the specified file and successively blocks until it is created and then until it is removed. This procedure is repeated twice.

Parameters
filePathFile whose creation and removal is monitored.

Referenced by IG.Lib.WaitFileEventBase.ExampleBlockCreateRemove(), and IG.Lib.WaitFileEventLatenceBase.ExampleBlockCreateRemoveLatence().

void IG.Lib.WaitFileEventLatenceBase.ExampleLatence.ExampleBlockCreateRemove ( string  filePath,
int  numSwitches 
)
inline

Monitors the specified file and successively blocks until it is created and then until it is removed.

Parameters
filePathFile whose creation and removal is monitored.
numSwitchesNumber of iterations (creation/removal waits).
void IG.Lib.WaitFileEventLatenceBase.ExampleLatence.ExampleBlockCreateRemove ( string  filePath,
int  numSwitches,
bool  waitDirectory 
)
inline

Monitors the specified file and successively blocks until it is created and then until it is removed.

Parameters
filePathFile whose creation and removal is monitored.
numSwitchesNumber of iterations (creation/removal waits).
directoryIf true then creation/removal of a directory is waiting.
void IG.Lib.WaitFileEventLatenceBase.ExampleLatence.AlternateCreateRemoveExample ( )
inlineprivate

Alternately creates and removes the specified file or directory in its own thread.

References IG.Lib.StopWatch.Reset(), IG.Lib.StopWatch.Start(), IG.Lib.StopWatch.Stop(), and IG.Lib.StopWatch.Time.

void IG.Lib.WaitFileEventLatenceBase.ExampleLatence.TestSpeedBlockCreateRemove ( string  filePath)
inline

Test of speed of reaction of file/directory creation and removal blocking waits. A specified number of alternate creations and removals are perfomed in a parallel thread, with specified delay between them. In the main thread, blocking waits are performed waiting for creation/removal in an infinite loop, and it is counted how many events are captured and how many are missed.

Parameters
filePathFile whose creation and removal is monitored.

Referenced by IG.Lib.WaitFileEventBase.TestSpeedBlockCreateRemove(), and IG.Lib.WaitFileEventLatenceBase.TestSpeedBlockCreateRemoveLatence().

void IG.Lib.WaitFileEventLatenceBase.ExampleLatence.TestSpeedBlockCreateRemove ( string  filePath,
int  numSwitches,
int  sleepMs 
)
inline

Test of speed of reaction of file/directory creation and removal blocking waits. A specified number of alternate creations and removals are perfomed in a parallel thread, with specified delay between them. In the main thread, blocking waits are performed waiting for creation/removal in an infinite loop, and it is counted how many events are captured and how many are missed.

Parameters
filePathFile whose creation and removal is monitored.
numSwitchesNumber of iterations (creation/removal waits).
sleepMsNumber of milliseconds to sleep between examples.
void IG.Lib.WaitFileEventLatenceBase.ExampleLatence.TestSpeedBlockCreateRemove ( string  filePath,
int  numSwitches,
int  sleepMs,
bool  waitDirectory 
)
inline

Test of speed of reaction of file/directory creation and removal blocking waits. A specified number of alternate creations and removals are perfomed in a parallel thread, with specified delay between them. In the main thread, blocking waits are performed waiting for creation/removal in an infinite loop, and it is counted how many events are captured and how many are missed.

Parameters
filePathFile whose creation and removal is monitored.
numSwitchesNumber of iterations (creation/removal waits).
sleepMsNumber of milliseconds to sleep between examples.
directoryIf true then creation/removal of a directory is waiting.

Member Data Documentation

object IG.Lib.WaitFileEventLatenceBase.ExampleLatence.lockExample = new object()
private
IWaitFileEvent IG.Lib.WaitFileEventLatenceBase.ExampleLatence._creation = null
protected
IWaitFileEvent IG.Lib.WaitFileEventLatenceBase.ExampleLatence._removal = null
private
string IG.Lib.WaitFileEventLatenceBase.ExampleLatence.ExamplePath
protected
bool IG.Lib.WaitFileEventLatenceBase.ExampleLatence.IsDirectory
protected
bool IG.Lib.WaitFileEventLatenceBase.ExampleLatence.TthreadStopped
protected
int IG.Lib.WaitFileEventLatenceBase.ExampleLatence.NumIterations
protected
int IG.Lib.WaitFileEventLatenceBase.ExampleLatence.SleepTimeMs
protected
double IG.Lib.WaitFileEventLatenceBase.ExampleLatence.TestTime
protected
object IG.Lib.WaitFileEventLatenceBase.ExampleLatence.fileOperationLock = new object()
protected

Lock for file creation and removal operations.

Property Documentation

virtual IWaitFileEvent IG.Lib.WaitFileEventLatenceBase.ExampleLatence.Creation
getprotected
virtual IWaitFileEvent IG.Lib.WaitFileEventLatenceBase.ExampleLatence.Removal
getprotected

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