Commit 042b0f22 authored by Michael Lee's avatar Michael Lee Committed by facebook-github-bot-1

Not to use EventBaseLocal on mobile

Summary: Temp remove EventBaseLocal on mobile.

Reviewed By: @djwatson

Differential Revision: D2302322
parent bfe9e3dd
...@@ -239,12 +239,14 @@ EventBase::~EventBase() { ...@@ -239,12 +239,14 @@ EventBase::~EventBase() {
event_base_free(evb_); event_base_free(evb_);
} }
#if !defined(ANDROID) && !defined(__ANDROID__) && !defined(__APPLE__)
{ {
std::lock_guard<std::mutex> lock(localStorageMutex_); std::lock_guard<std::mutex> lock(localStorageMutex_);
for (auto storage : localStorageToDtor_) { for (auto storage : localStorageToDtor_) {
storage->onEventBaseDestruction(*this); storage->onEventBaseDestruction(*this);
} }
} }
#endif
VLOG(5) << "EventBase(): Destroyed."; VLOG(5) << "EventBase(): Destroyed.";
} }
......
...@@ -47,11 +47,13 @@ typedef std::function<void()> Cob; ...@@ -47,11 +47,13 @@ typedef std::function<void()> Cob;
template <typename MessageT> template <typename MessageT>
class NotificationQueue; class NotificationQueue;
#if !defined(ANDROID) && !defined(__ANDROID__) && !defined(__APPLE__)
namespace detail { namespace detail {
class EventBaseLocalBase; class EventBaseLocalBase;
} }
template <typename T> template <typename T>
class EventBaseLocal; class EventBaseLocal;
#endif
class EventBaseObserver { class EventBaseObserver {
public: public:
...@@ -738,12 +740,14 @@ class EventBase : private boost::noncopyable, ...@@ -738,12 +740,14 @@ class EventBase : private boost::noncopyable,
// allow runOnDestruction() to be called from any threads // allow runOnDestruction() to be called from any threads
std::mutex onDestructionCallbacksMutex_; std::mutex onDestructionCallbacksMutex_;
#if !defined(ANDROID) && !defined(__ANDROID__) && !defined(__APPLE__)
// see EventBaseLocal // see EventBaseLocal
friend class detail::EventBaseLocalBase; friend class detail::EventBaseLocalBase;
template <typename T> friend class EventBaseLocal; template <typename T> friend class EventBaseLocal;
std::mutex localStorageMutex_; std::mutex localStorageMutex_;
std::unordered_map<uint64_t, std::shared_ptr<void>> localStorage_; std::unordered_map<uint64_t, std::shared_ptr<void>> localStorage_;
std::unordered_set<detail::EventBaseLocalBase*> localStorageToDtor_; std::unordered_set<detail::EventBaseLocalBase*> localStorageToDtor_;
#endif
}; };
} // folly } // folly
...@@ -14,6 +14,8 @@ ...@@ -14,6 +14,8 @@
* limitations under the License. * limitations under the License.
*/ */
#if !defined(ANDROID) && !defined(__ANDROID__) && !defined(__APPLE__)
#include <folly/io/async/EventBaseLocal.h> #include <folly/io/async/EventBaseLocal.h>
#include <atomic> #include <atomic>
#include <thread> #include <thread>
...@@ -96,3 +98,5 @@ void EventBaseLocalBase::setVoidUnlocked( ...@@ -96,3 +98,5 @@ void EventBaseLocalBase::setVoidUnlocked(
std::atomic<uint64_t> EventBaseLocalBase::keyCounter_{0}; std::atomic<uint64_t> EventBaseLocalBase::keyCounter_{0};
}} }}
#endif // !__ANDROID__ && !ANDROID && !__APPLE__
...@@ -16,6 +16,8 @@ ...@@ -16,6 +16,8 @@
#pragma once #pragma once
#if !defined(ANDROID) && !defined(__ANDROID__) && !defined(__APPLE__)
#include <boost/noncopyable.hpp> #include <boost/noncopyable.hpp>
#include <folly/Synchronized.h> #include <folly/Synchronized.h>
#include <folly/io/async/EventBase.h> #include <folly/io/async/EventBase.h>
...@@ -126,3 +128,5 @@ class EventBaseLocal : public detail::EventBaseLocalBase { ...@@ -126,3 +128,5 @@ class EventBaseLocal : public detail::EventBaseLocalBase {
} }
#endif // !__ANDROID__ && !ANDROID && !__APPLE__
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment