refactor: use std::mutex in deskflow/PacketStreamFilter
This commit is contained in:
parent
86e109baf5
commit
818d588b65
2 changed files with 10 additions and 10 deletions
|
|
@ -9,7 +9,6 @@
|
|||
#include "base/IEventQueue.h"
|
||||
#include "base/TMethodEventJob.h"
|
||||
#include "deskflow/ProtocolTypes.h"
|
||||
#include "mt/Lock.h"
|
||||
|
||||
#include <cstring>
|
||||
#include <memory>
|
||||
|
|
@ -27,7 +26,7 @@ PacketStreamFilter::PacketStreamFilter(IEventQueue *events, deskflow::IStream *s
|
|||
|
||||
void PacketStreamFilter::close()
|
||||
{
|
||||
Lock lock(&m_mutex);
|
||||
std::lock_guard<std::mutex> lock(m_mutex);
|
||||
m_size = 0;
|
||||
m_buffer.pop(m_buffer.getSize());
|
||||
StreamFilter::close();
|
||||
|
|
@ -39,7 +38,7 @@ uint32_t PacketStreamFilter::read(void *buffer, uint32_t n)
|
|||
return 0;
|
||||
}
|
||||
|
||||
Lock lock(&m_mutex);
|
||||
std::lock_guard<std::mutex> lock(m_mutex);
|
||||
|
||||
// if not enough data yet then give up
|
||||
if (!isReadyNoLock()) {
|
||||
|
|
@ -85,7 +84,7 @@ void PacketStreamFilter::write(const void *buffer, uint32_t count)
|
|||
|
||||
void PacketStreamFilter::shutdownInput()
|
||||
{
|
||||
Lock lock(&m_mutex);
|
||||
std::lock_guard<std::mutex> lock(m_mutex);
|
||||
m_size = 0;
|
||||
m_buffer.pop(m_buffer.getSize());
|
||||
StreamFilter::shutdownInput();
|
||||
|
|
@ -93,13 +92,13 @@ void PacketStreamFilter::shutdownInput()
|
|||
|
||||
bool PacketStreamFilter::isReady() const
|
||||
{
|
||||
Lock lock(&m_mutex);
|
||||
std::lock_guard<std::mutex> lock(m_mutex);
|
||||
return isReadyNoLock();
|
||||
}
|
||||
|
||||
uint32_t PacketStreamFilter::getSize() const
|
||||
{
|
||||
Lock lock(&m_mutex);
|
||||
std::lock_guard<std::mutex> lock(m_mutex);
|
||||
return isReadyNoLock() ? m_size : 0;
|
||||
}
|
||||
|
||||
|
|
@ -158,13 +157,13 @@ bool PacketStreamFilter::readMore()
|
|||
void PacketStreamFilter::filterEvent(const Event &event)
|
||||
{
|
||||
if (event.getType() == EventTypes::StreamInputReady) {
|
||||
Lock lock(&m_mutex);
|
||||
std::lock_guard<std::mutex> lock(m_mutex);
|
||||
if (!readMore()) {
|
||||
return;
|
||||
}
|
||||
} else if (event.getType() == EventTypes::StreamInputShutdown) {
|
||||
// discard this if we have buffered data
|
||||
Lock lock(&m_mutex);
|
||||
std::lock_guard<std::mutex> lock(m_mutex);
|
||||
m_inputShutdown = true;
|
||||
if (m_size != 0) {
|
||||
return;
|
||||
|
|
|
|||
|
|
@ -9,7 +9,8 @@
|
|||
|
||||
#include "io/StreamBuffer.h"
|
||||
#include "io/StreamFilter.h"
|
||||
#include "mt/Mutex.h"
|
||||
|
||||
#include <mutex>
|
||||
|
||||
class IEventQueue;
|
||||
|
||||
|
|
@ -41,7 +42,7 @@ private:
|
|||
bool readMore();
|
||||
|
||||
private:
|
||||
Mutex m_mutex;
|
||||
mutable std::mutex m_mutex;
|
||||
uint32_t m_size = 0;
|
||||
StreamBuffer m_buffer;
|
||||
bool m_inputShutdown = false;
|
||||
|
|
|
|||
Loading…
Reference in a new issue