split lastRecvTimeStamp into two different time stamps: one for last time the file is wrote (or data is received) and one for last activity that is used (and sometimes reset) by ftcontroller when queuing files

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6921 b45a01b8-16f6-495d-af2f-9b41ad6348cc
This commit is contained in:
csoler 2013-12-04 20:26:54 +00:00
parent d0d85c0242
commit 028c9f8c07
5 changed files with 45 additions and 13 deletions

View file

@ -96,6 +96,8 @@ ftTransferModule::ftTransferModule(ftFileCreator *fc, ftDataMultiplex *dm, ftCon
_crcmap_last_asked_time = 0 ;
_crcmap_last_tunnel_keepup = 0 ;
_crcreq_source = "";
_last_activity_time_stamp = time(NULL) ;
}
ftTransferModule::~ftTransferModule()
@ -286,7 +288,16 @@ uint32_t ftTransferModule::getDataRate(const std::string& peerId)
else
return (uint32_t) (mit->second).actualRate;
}
void ftTransferModule::resetActvTimeStamp()
{
RsStackMutex stack(tfMtx); /******* STACK LOCKED ******/
_last_activity_time_stamp = time(NULL);
}
time_t ftTransferModule::lastActvTimeStamp()
{
RsStackMutex stack(tfMtx); /******* STACK LOCKED ******/
return _last_activity_time_stamp ;
}
//interface to client module
bool ftTransferModule::recvFileData(const std::string& peerId, uint64_t offset, uint32_t chunk_size, void *data)
@ -319,6 +330,8 @@ bool ftTransferModule::recvFileData(const std::string& peerId, uint64_t offset,
locked_storeData(offset, chunk_size, data);
_last_activity_time_stamp = time(NULL) ;
free(data) ;
return ok;
}