X-Git-Url: http://plrg.eecs.uci.edu/git/?p=folly.git;a=blobdiff_plain;f=folly%2Fexperimental%2Ffibers%2FFiber.cpp;h=b4fea854afbea52ab793907c36855480ebba7e9f;hp=e66752acee3baa6d6853e4dc496c44a663a964e8;hb=b05969e4b4474cadf1cb1f8ebc37567cc63c9b88;hpb=17b973baa8c4a5fc9f80807b2ddfe874c7cc4bb0 diff --git a/folly/experimental/fibers/Fiber.cpp b/folly/experimental/fibers/Fiber.cpp index e66752ac..b4fea854 100644 --- a/folly/experimental/fibers/Fiber.cpp +++ b/folly/experimental/fibers/Fiber.cpp @@ -19,9 +19,9 @@ #include #include -#include #include #include +#include #include #include @@ -61,7 +61,7 @@ static size_t nonMagicInBytes(const FContext& context) { } // anonymous namespace void Fiber::setData(intptr_t data) { - assert(state_ == AWAITING); + DCHECK_EQ(state_, AWAITING); data_ = data; state_ = READY_TO_RUN; @@ -142,19 +142,19 @@ static constexpr bool loopForever = true; void Fiber::fiberFunc() { while (loopForever) { - assert(state_ == NOT_STARTED); + DCHECK_EQ(state_, NOT_STARTED); threadId_ = localThreadId(); state_ = RUNNING; try { if (resultFunc_) { - assert(finallyFunc_); - assert(!func_); + DCHECK(finallyFunc_); + DCHECK(!func_); resultFunc_(); } else { - assert(func_); + DCHECK(func_); func_(); } } catch (...) { @@ -175,16 +175,15 @@ void Fiber::fiberFunc() { fiberManager_.activeFiber_ = nullptr; - auto fiber = reinterpret_cast( - jumpContext(&fcontext_, &fiberManager_.mainContext_, 0)); - assert(fiber == this); + auto context = jumpContext(&fcontext_, &fiberManager_.mainContext_, 0); + DCHECK_EQ(reinterpret_cast(context), this); } } intptr_t Fiber::preempt(State state) { - assert(fiberManager_.activeFiber_ == this); - assert(state_ == RUNNING); - assert(state != RUNNING); + DCHECK_EQ(fiberManager_.activeFiber_, this); + DCHECK_EQ(state_, RUNNING); + DCHECK_NE(state, RUNNING); fiberManager_.activeFiber_ = nullptr; state_ = state; @@ -193,8 +192,8 @@ intptr_t Fiber::preempt(State state) { auto ret = jumpContext(&fcontext_, &fiberManager_.mainContext_, 0); - assert(fiberManager_.activeFiber_ == this); - assert(state_ == READY_TO_RUN); + DCHECK_EQ(fiberManager_.activeFiber_, this); + DCHECK_EQ(state_, READY_TO_RUN); state_ = RUNNING; return ret;