moved rsGlobalShutDown from MainWindow::doQuit to main

rsGlobalShutDown now cleans the threads and some memory on exit

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3028 b45a01b8-16f6-495d-af2f-9b41ad6348cc
This commit is contained in:
thunder2 2010-05-29 15:14:25 +00:00
parent b80aef1228
commit 334c9b61d3
13 changed files with 61 additions and 16 deletions

View file

@ -207,7 +207,7 @@ void ftController::run()
/* check the queues */
uint32_t cnt = 0 ;
while(1)
while(m_bRun)
{
#ifdef WIN32
Sleep(1000);

View file

@ -49,7 +49,7 @@ void ftExtraList::run()
time_t cleanup = 0;
time_t now = 0;
while (1)
while (m_bRun)
{
#ifdef DEBUG_ELIST
//std::cerr << "ftExtraList::run() Iteration";

View file

@ -191,6 +191,37 @@ void ftServer::StartupThreads()
start();
}
void ftServer::StopThreads()
{
/* stop own thread */
join();
/* stop Dataplex */
mFtDataplex->join();
/* stop Controller thread */
mFtController->join();
/* stop Monitor Thread */
mFiMon->join();
/* self contained threads */
/* stop ExtraList Thread */
mFtExtra->join();
delete (mFtDataplex);
mFtDataplex = NULL;
delete (mFtController);
mFtController = NULL;
delete (mFiMon);
mFiMon = NULL;
delete (mFtExtra);
mFtExtra = NULL;
}
CacheStrapper *ftServer::getCacheStrapper()
{
return mCacheStrapper;
@ -203,7 +234,7 @@ CacheTransfer *ftServer::getCacheTransfer()
void ftServer::run()
{
while(1)
while(m_bRun)
{
mFtDataplex->deleteUnusedServers() ;
#ifdef WIN32

View file

@ -98,6 +98,7 @@ void SetupFtServer(NotifyBase *cb);
void connectToTurtleRouter(p3turtle *p) ;
void StartupThreads();
void StopThreads();
/* own thread */
virtual void run();