From 49ab4968be3dc25582fd20d3a0a6c50543d6f517 Mon Sep 17 00:00:00 2001 From: Matej Sekoranja Date: Thu, 3 Mar 2011 22:26:53 +0100 Subject: [PATCH] md mutex copy patch --- pvAccessApp/factory/ChannelAccessFactory.cpp | 4 ++-- pvAccessApp/factory/CreateRequestFactory.cpp | 2 +- pvAccessApp/remote/beaconHandler.cpp | 13 ++++++++++--- pvAccessApp/utils/configuration.cpp | 2 +- pvAccessApp/utils/introspectionRegistry.cpp | 2 +- pvAccessApp/utils/transportRegistry.cpp | 2 +- 6 files changed, 16 insertions(+), 9 deletions(-) diff --git a/pvAccessApp/factory/ChannelAccessFactory.cpp b/pvAccessApp/factory/ChannelAccessFactory.cpp index 88c9d37..aef54f3 100644 --- a/pvAccessApp/factory/ChannelAccessFactory.cpp +++ b/pvAccessApp/factory/ChannelAccessFactory.cpp @@ -14,7 +14,7 @@ namespace epics { namespace pvAccess { static ChannelAccess* channelAccess = 0; -static Mutex channelProviderMutex = Mutex(); +static Mutex channelProviderMutex; typedef std::map ChannelProviderMap; static ChannelProviderMap channelProviders; @@ -40,7 +40,7 @@ class ChannelAccessImpl : public ChannelAccess { }; ChannelAccess * getChannelAccess() { - static Mutex mutex = Mutex(); + static Mutex mutex; Lock guard(mutex); if(channelAccess==0){ diff --git a/pvAccessApp/factory/CreateRequestFactory.cpp b/pvAccessApp/factory/CreateRequestFactory.cpp index 310cadd..c063549 100644 --- a/pvAccessApp/factory/CreateRequestFactory.cpp +++ b/pvAccessApp/factory/CreateRequestFactory.cpp @@ -255,7 +255,7 @@ class CreateRequestImpl : public CreateRequest { static CreateRequest* createRequest = 0; CreateRequest * getCreateRequest() { - static Mutex mutex = Mutex(); + static Mutex mutex; Lock guard(mutex); if(createRequest==0){ diff --git a/pvAccessApp/remote/beaconHandler.cpp b/pvAccessApp/remote/beaconHandler.cpp index 4bac51b..b7a1803 100644 --- a/pvAccessApp/remote/beaconHandler.cpp +++ b/pvAccessApp/remote/beaconHandler.cpp @@ -10,13 +10,20 @@ using namespace epics::pvAccess; namespace epics { namespace pvAccess { -BeaconHandler::BeaconHandler(ClientContextImpl* context, const osiSockAddr* responseFrom): _context(context), _responseFrom(*responseFrom), _mutex(Mutex()), _serverStartupTime(TimeStamp(0)) +BeaconHandler::BeaconHandler(ClientContextImpl* context, + const osiSockAddr* responseFrom) + :_context(context) + ,_responseFrom(*responseFrom) + ,_mutex() + ,_serverStartupTime(0) { } -BeaconHandler::BeaconHandler(const osiSockAddr* responseFrom): -_responseFrom(*responseFrom), _mutex(Mutex()), _serverStartupTime(TimeStamp(0)) +BeaconHandler::BeaconHandler(const osiSockAddr* responseFrom) + :_responseFrom(*responseFrom) + ,_mutex() + , _serverStartupTime(0) { } diff --git a/pvAccessApp/utils/configuration.cpp b/pvAccessApp/utils/configuration.cpp index 6b2b7d4..ce06179 100644 --- a/pvAccessApp/utils/configuration.cpp +++ b/pvAccessApp/utils/configuration.cpp @@ -302,7 +302,7 @@ Configuration* ConfigurationProviderImpl::getConfiguration(const string name) } ConfigurationProviderImpl* ConfigurationFactory::_configurationProvider = NULL; -Mutex ConfigurationFactory::_conf_factory_mutex = Mutex(); +Mutex ConfigurationFactory::_conf_factory_mutex; ConfigurationProviderImpl* ConfigurationFactory::getProvider() { diff --git a/pvAccessApp/utils/introspectionRegistry.cpp b/pvAccessApp/utils/introspectionRegistry.cpp index ec93797..18f5567 100644 --- a/pvAccessApp/utils/introspectionRegistry.cpp +++ b/pvAccessApp/utils/introspectionRegistry.cpp @@ -12,7 +12,7 @@ const int8 IntrospectionRegistry::FULL_WITH_ID_TYPE_CODE = (int8)-3; PVDataCreate* IntrospectionRegistry::_pvDataCreate = 0; FieldCreate* IntrospectionRegistry::_fieldCreate = 0; -IntrospectionRegistry::IntrospectionRegistry(bool serverSide) : _mutex(Mutex()) +IntrospectionRegistry::IntrospectionRegistry(bool serverSide) : _mutex() { // TODO not optimal _pvDataCreate = getPVDataCreate(); diff --git a/pvAccessApp/utils/transportRegistry.cpp b/pvAccessApp/utils/transportRegistry.cpp index ff36a09..12858d6 100644 --- a/pvAccessApp/utils/transportRegistry.cpp +++ b/pvAccessApp/utils/transportRegistry.cpp @@ -9,7 +9,7 @@ using namespace std; namespace epics { namespace pvAccess { -TransportRegistry::TransportRegistry(): _mutex(Mutex()) +TransportRegistry::TransportRegistry(): _mutex() { }