Replaced pthread with std:: thread and mutex

This commit is contained in:
Jean-Francois Dockes 2016-07-12 18:08:21 +02:00
parent dfcd57f665
commit e0473b5606
33 changed files with 367 additions and 633 deletions

View file

@ -53,7 +53,7 @@ string DocSequenceDb::getDescription()
bool DocSequenceDb::getDoc(int num, Rcl::Doc &doc, string *sh)
{
PTMutexLocker locker(o_dblock);
std::unique_lock<std::mutex> locker(o_dblock);
if (!setQuery())
return false;
if (sh) sh->erase();
@ -62,7 +62,7 @@ bool DocSequenceDb::getDoc(int num, Rcl::Doc &doc, string *sh)
int DocSequenceDb::getResCnt()
{
PTMutexLocker locker(o_dblock);
std::unique_lock<std::mutex> locker(o_dblock);
if (!setQuery())
return false;
if (m_rescnt < 0) {
@ -78,7 +78,7 @@ static const string cstr_mre("[...]");
bool DocSequenceDb::getAbstract(Rcl::Doc &doc, vector<Rcl::Snippet>& vpabs)
{
LOGDEB("DocSequenceDb::getAbstract/pair\n" );
PTMutexLocker locker(o_dblock);
std::unique_lock<std::mutex> locker(o_dblock);
if (!setQuery())
return false;
@ -108,7 +108,7 @@ bool DocSequenceDb::getAbstract(Rcl::Doc &doc, vector<Rcl::Snippet>& vpabs)
bool DocSequenceDb::getAbstract(Rcl::Doc &doc, vector<string>& vabs)
{
PTMutexLocker locker(o_dblock);
std::unique_lock<std::mutex> locker(o_dblock);
if (!setQuery())
return false;
if (m_q->whatDb() &&
@ -122,7 +122,7 @@ bool DocSequenceDb::getAbstract(Rcl::Doc &doc, vector<string>& vabs)
int DocSequenceDb::getFirstMatchPage(Rcl::Doc &doc, string& term)
{
PTMutexLocker locker(o_dblock);
std::unique_lock<std::mutex> locker(o_dblock);
if (!setQuery())
return false;
if (m_q->whatDb()) {
@ -138,7 +138,7 @@ Rcl::Db *DocSequenceDb::getDb()
list<string> DocSequenceDb::expand(Rcl::Doc &doc)
{
PTMutexLocker locker(o_dblock);
std::unique_lock<std::mutex> locker(o_dblock);
if (!setQuery())
return list<string>();
vector<string> v = m_q->expand(doc);
@ -161,7 +161,7 @@ string DocSequenceDb::title()
bool DocSequenceDb::setFiltSpec(const DocSeqFiltSpec &fs)
{
LOGDEB("DocSequenceDb::setFiltSpec\n" );
PTMutexLocker locker(o_dblock);
std::unique_lock<std::mutex> locker(o_dblock);
if (fs.isNotNull()) {
// We build a search spec by adding a filtering layer to the base one.
m_fsdata = STD_SHARED_PTR<Rcl::SearchData>(
@ -209,7 +209,7 @@ bool DocSequenceDb::setFiltSpec(const DocSeqFiltSpec &fs)
bool DocSequenceDb::setSortSpec(const DocSeqSortSpec &spec)
{
LOGDEB("DocSequenceDb::setSortSpec: fld [" << (spec.field) << "] " << (spec.desc ? "desc" : "asc") << "\n" );
PTMutexLocker locker(o_dblock);
std::unique_lock<std::mutex> locker(o_dblock);
if (spec.isNotNull()) {
m_q->setSortBy(spec.field, !spec.desc);
m_isSorted = true;
@ -239,7 +239,7 @@ bool DocSequenceDb::setQuery()
bool DocSequenceDb::docDups(const Rcl::Doc& doc, std::vector<Rcl::Doc>& dups)
{
if (m_q->whatDb()) {
PTMutexLocker locker(o_dblock);
std::unique_lock<std::mutex> locker(o_dblock);
return m_q->whatDb()->docDups(doc, dups);
} else {
return false;