mirror of https://github.com/trapexit/mergerfs.git
Antonio SJ Musumeci
5 years ago
15 changed files with 508 additions and 113 deletions
-
6README.md
-
16libfuse/include/fuse.h
-
96libfuse/lib/fuse.c
-
21man/mergerfs.1
-
2src/config.cpp
-
1src/config.hpp
-
7src/fileinfo.hpp
-
2src/fuse_create.cpp
-
127src/fuse_fgetattr.cpp
-
2src/fuse_open.cpp
-
91src/fuse_read.cpp
-
199src/fuse_read_buf.cpp
-
6src/fuse_read_buf.hpp
-
3src/mergerfs.cpp
-
42src/mutex.hpp
@ -0,0 +1,42 @@ |
|||||
|
/*
|
||||
|
ISC License |
||||
|
|
||||
|
Copyright (c) 2020, Antonio SJ Musumeci <trapexit@spawn.link> |
||||
|
|
||||
|
Permission to use, copy, modify, and/or distribute this software for any |
||||
|
purpose with or without fee is hereby granted, provided that the above |
||||
|
copyright notice and this permission notice appear in all copies. |
||||
|
|
||||
|
THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES |
||||
|
WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF |
||||
|
MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR |
||||
|
ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES |
||||
|
WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN |
||||
|
ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF |
||||
|
OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. |
||||
|
*/ |
||||
|
|
||||
|
#pragma once
|
||||
|
|
||||
|
#include <pthread.h>
|
||||
|
|
||||
|
namespace mutex |
||||
|
{ |
||||
|
class Guard |
||||
|
{ |
||||
|
public: |
||||
|
Guard(pthread_mutex_t &lock_) |
||||
|
: _lock(lock_) |
||||
|
{ |
||||
|
pthread_mutex_lock(&_lock); |
||||
|
} |
||||
|
|
||||
|
~Guard() |
||||
|
{ |
||||
|
pthread_mutex_unlock(&_lock); |
||||
|
} |
||||
|
|
||||
|
private: |
||||
|
pthread_mutex_t &_lock; |
||||
|
}; |
||||
|
} |
Write
Preview
Loading…
Cancel
Save
Reference in new issue