403Webshell
Server IP : 182.53.201.61  /  Your IP : 216.73.217.175
Web Server : Apache/2.2.15 (Fedora)
System : Linux km10.dyndns.org 2.6.31.5-127.fc12.i686.PAE #1 SMP Sat Nov 7 21:25:57 EST 2009 i686
User : apache ( 48)
PHP Version : 5.3.3
Disable Function : NONE
MySQL : ON  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : ON  |  Sudo : ON  |  Pkexec : ON
Directory :  /usr/include/boost/interprocess/sync/posix/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /usr/include/boost/interprocess/sync/posix/interprocess_barrier.hpp
//////////////////////////////////////////////////////////////////////////////
//
// (C) Copyright Ion Gaztanaga 2006. Distributed under the Boost
// Software License, Version 1.0. (See accompanying file
// LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
//
// See http://www.boost.org/libs/interprocess for documentation.
//
//////////////////////////////////////////////////////////////////////////////

#include<boost/interprocess/exceptions.hpp>
#include <boost/interprocess/detail/posix_time_types_wrk.hpp>

namespace boost {
namespace interprocess {

inline barrier::barrier(unsigned int count)
{
   if (count == 0)
      throw std::invalid_argument("count cannot be zero.");
   detail::barrierattr_wrapper barrier_attr;
   detail::barrier_initializer barrier
      (m_barrier, barrier_attr, static_cast<int>(count));
   barrier.release();
}

inline barrier::~barrier()
{
   int res = pthread_barrier_destroy(&m_barrier);
   assert(res  == 0);(void)res;
}

inline bool barrier::wait()
{
   int res = pthread_barrier_wait(&m_barrier);

   if (res != PTHREAD_BARRIER_SERIAL_THREAD && res != 0){
      throw interprocess_exception(res);
   }
   return res == PTHREAD_BARRIER_SERIAL_THREAD;
}

}  //namespace interprocess {
}  //namespace boost {

Youez - 2016 - github.com/yon3zu
LinuXploit