[Libreoffice-commits] core.git: svl/source
Noel Grandin (via logerrit)
logerrit at kemper.freedesktop.org
Sat Jul 17 10:05:52 UTC 2021
svl/source/misc/sharedstringpool.cxx | 12 ++++++------
1 file changed, 6 insertions(+), 6 deletions(-)
New commits:
commit 960ad8037275d86f15e0177f52a1d0dac25319e4
Author: Noel Grandin <noelgrandin at gmail.com>
AuthorDate: Fri Jul 16 20:48:53 2021 +0200
Commit: Noel Grandin <noel.grandin at collabora.co.uk>
CommitDate: Sat Jul 17 12:05:20 2021 +0200
osl::Mutex->std::mutex in SharedStringPool
std::mutex is slightly faster
Change-Id: I0741cd1ed0a011d5e8d6099c189c85f50060a326
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/119087
Tested-by: Noel Grandin <noel.grandin at collabora.co.uk>
Reviewed-by: Noel Grandin <noel.grandin at collabora.co.uk>
diff --git a/svl/source/misc/sharedstringpool.cxx b/svl/source/misc/sharedstringpool.cxx
index 997648fac363..bcb53c294128 100644
--- a/svl/source/misc/sharedstringpool.cxx
+++ b/svl/source/misc/sharedstringpool.cxx
@@ -10,8 +10,8 @@
#include <svl/sharedstringpool.hxx>
#include <svl/sharedstring.hxx>
#include <unotools/charclass.hxx>
-#include <osl/mutex.hxx>
+#include <mutex>
#include <unordered_map>
#include <unordered_set>
@@ -54,7 +54,7 @@ sal_Int32 getRefCount(const rtl_uString* p) { return (p->refCount & 0x3FFFFFFF);
struct SharedStringPool::Impl
{
- mutable osl::Mutex maMutex;
+ mutable std::mutex maMutex;
// We use this map for two purposes - to store lower->upper case mappings
// and to retrieve a shared uppercase object, so the management logic
// is quite complex.
@@ -77,7 +77,7 @@ SharedStringPool::~SharedStringPool() {}
SharedString SharedStringPool::intern(const OUString& rStr)
{
StringWithHash aStrWithHash(rStr);
- osl::MutexGuard aGuard(&mpImpl->maMutex);
+ std::lock_guard<std::mutex> aGuard(mpImpl->maMutex);
auto[mapIt, bInserted] = mpImpl->maStrMap.emplace(aStrWithHash, rStr);
if (!bInserted)
@@ -112,7 +112,7 @@ SharedString SharedStringPool::intern(const OUString& rStr)
void SharedStringPool::purge()
{
- osl::MutexGuard aGuard(&mpImpl->maMutex);
+ std::lock_guard<std::mutex> aGuard(mpImpl->maMutex);
// Because we can have an uppercase entry mapped to itself,
// and then a bunch of lowercase entries mapped to that same
@@ -163,13 +163,13 @@ void SharedStringPool::purge()
size_t SharedStringPool::getCount() const
{
- osl::MutexGuard aGuard(&mpImpl->maMutex);
+ std::lock_guard<std::mutex> aGuard(mpImpl->maMutex);
return mpImpl->maStrMap.size();
}
size_t SharedStringPool::getCountIgnoreCase() const
{
- osl::MutexGuard aGuard(&mpImpl->maMutex);
+ std::lock_guard<std::mutex> aGuard(mpImpl->maMutex);
// this is only called from unit tests, so no need to be efficient
std::unordered_set<OUString> aUpperSet;
for (auto const& pair : mpImpl->maStrMap)
More information about the Libreoffice-commits
mailing list