From b8cb20f802a0aae906a33e2357050219fbe1aaf3 Mon Sep 17 00:00:00 2001
From: xuxiuxi <xuxiuxi@454eff88-639b-444f-9e54-f578c98de674>
Date: 星期五, 21 四月 2017 11:41:04 +0800
Subject: [PATCH]
---
RtspFace/SensetimeFaceAPIWrapper/src/FaceDBPool.cpp | 60 ++++++++++++++++++++++++++++++------------------------------
1 files changed, 30 insertions(+), 30 deletions(-)
diff --git a/RtspFace/SensetimeFaceAPIWrapper/src/FaceDBPool.cpp b/RtspFace/SensetimeFaceAPIWrapper/src/FaceDBPool.cpp
index 9a39a6f..680d1e0 100644
--- a/RtspFace/SensetimeFaceAPIWrapper/src/FaceDBPool.cpp
+++ b/RtspFace/SensetimeFaceAPIWrapper/src/FaceDBPool.cpp
@@ -1,5 +1,5 @@
#include "FaceDBPool.h"
-#include "logger.h"
+#include "../../logger.h"
#include "faceAPI.h"
#include <pthread.h>
@@ -9,7 +9,7 @@
int ret = pthread_mutex_lock((pthread_mutex_t*)mut); \
if(ret != 0) \
{ \
- LOG_ERROR << "pthread_mutex_lock " << #mut << ": " << ret; \
+ LOG_ERROR << "pthread_mutex_lock " << #mut << ": " << ret << std::endl; \
return _ret; \
} \
}
@@ -18,7 +18,7 @@
int ret = pthread_mutex_unlock((pthread_mutex_t*)mut); \
if(ret != 0) \
{ \
- LOG_ERROR << "pthread_mutex_unlock " << #mut << ": " << ret; \
+ LOG_ERROR << "pthread_mutex_unlock " << #mut << ": " << ret << std::endl; \
return _ret; \
} \
}
@@ -26,7 +26,7 @@
struct MutexLocker
{
pthread_mutex_t* mut;
- MutexLocker(pthread_mutex_t* _mut) : mut(_mut)
+ MutexLocker(void* _mut) : mut((pthread_mutex_t*)_mut)
{
PLP_MUTEX_LOCK(mut,);
}
@@ -40,16 +40,16 @@
{
int dbid;
pthread_mutex_t db_mutex;
- faceAPI* api;
+ FaceDB* api;
ThreadSafeFaceDB() : dbid(-1), db_mutex(), api(nullptr)
{
- pthread_mutex_init(db_mutex, NULL);
+ pthread_mutex_init(&db_mutex, NULL);
}
~ThreadSafeFaceDB()
{
- pthread_mutex_destroy(db_mutex);
+ pthread_mutex_destroy(&db_mutex);
}
};
@@ -69,19 +69,19 @@
facedb_map_t* _face_db_map = (facedb_map_t*)face_db_map;
for (facedb_map_t::iterator iter = _face_db_map->begin(); iter != _face_db_map->end(); ++iter)
{
- iter->second.api->db_save();
- delete iter->second.api;
+ iter->second->api->finally();
+ delete iter->second->api;
delete iter->second;
}
- _face_db_map.clear();
+ _face_db_map->clear();
pthread_mutex_destroy((pthread_mutex_t*)pool_mutex);
delete (pthread_mutex_t*)pool_mutex;
pool_mutex = nullptr;
}
-void FaceDBPool::manage(int dbid, faceAPI* db)
+void FaceDBPool::manage(int dbid, FaceDB* db)
{
if (dbid < 0 || db == nullptr)
return;
@@ -90,14 +90,14 @@
facedb_map_t* _face_db_map = (facedb_map_t*)face_db_map;
- if (_face_db_map.find(dbid) != _face_db_map.end())
+ if (_face_db_map->find(dbid) != _face_db_map->end())
return;
ThreadSafeFaceDB* tsfdb = new ThreadSafeFaceDB;
- tsfdb.dbid = dbid;
- tsfdb.api = db;
+ tsfdb->dbid = dbid;
+ tsfdb->api = db;
- _face_db_map.insert(std::make_pair(dbid, tsfdb));
+ _face_db_map->insert(std::make_pair(dbid, tsfdb));
}
void FaceDBPool::unmanage(int dbid)
@@ -105,18 +105,18 @@
MutexLocker _ml(pool_mutex);
facedb_map_t* _face_db_map = (facedb_map_t*)face_db_map;
- facedb_map_t::iterator iter = _face_db_map.find(dbid);
- if (iter == _face_db_map.end())
+ facedb_map_t::iterator iter = _face_db_map->find(dbid);
+ if (iter == _face_db_map->end())
return;
- iter->second.api->db_save();
- delete iter->second.api;
+ iter->second->api->finally();
+ delete iter->second->api;
delete iter->second;
- _face_db_map.erase(iter);
+ _face_db_map->erase(iter);
}
-faceAPI* FaceDBPool::get_free(int dbid)
+FaceDB* FaceDBPool::get_free(int dbid)
{
ThreadSafeFaceDB* tsfdb = nullptr;
{
@@ -124,11 +124,11 @@
MutexLocker _ml(pool_mutex);
facedb_map_t* _face_db_map = (facedb_map_t*)face_db_map;
- if (_face_db_map.empty())
+ if (_face_db_map->empty())
return nullptr;
- facedb_map_t::iterator iter = _face_db_map.find(dbid);
- if (iter == _face_db_map.end())
+ facedb_map_t::iterator iter = _face_db_map->find(dbid);
+ if (iter == _face_db_map->end())
return nullptr;
tsfdb = iter->second;
@@ -136,7 +136,7 @@
if (tsfdb != nullptr)
{
- PLP_MUTEX_LOCK(tsfdb->db_mutex, nullptr);
+ PLP_MUTEX_LOCK(&(tsfdb->db_mutex), nullptr);
return tsfdb->api;
}
}
@@ -149,18 +149,18 @@
MutexLocker _ml(pool_mutex);
facedb_map_t* _face_db_map = (facedb_map_t*)face_db_map;
- if (_face_db_map.empty())
+ if (_face_db_map->empty())
return;
- facedb_map_t::iterator iter = _face_db_map.find(dbid);
- if (iter == _face_db_map.end())
- return nullptr;
+ facedb_map_t::iterator iter = _face_db_map->find(dbid);
+ if (iter == _face_db_map->end())
+ return;
tsfdb = iter->second;
}
if (tsfdb != nullptr)
{
- PLP_MUTEX_UNLOCK(tsfdb->db_mutex,);
+ PLP_MUTEX_UNLOCK(&(tsfdb->db_mutex),);
}
}
--
Gitblit v1.8.0