From: Roger Meier Date: Fri, 30 Sep 2011 20:23:34 +0000 (+0000) Subject: THRIFT-1031 Patch to compile Thrift for vc++ 9.0 and 10.0 X-Git-Tag: 0.8.0~67 X-Git-Url: https://source.supwisdom.com/gerrit/gitweb?a=commitdiff_plain;h=3516e0e306c4ae124dba3ed8f997c8820bcd0864;p=common%2Fthrift.git THRIFT-1031 Patch to compile Thrift for vc++ 9.0 and 10.0 Patch: Peace git-svn-id: https://svn.apache.org/repos/asf/thrift/trunk@1177817 13f79535-47bb-0310-9956-ffa450edef68 --- diff --git a/lib/cpp/src/concurrency/PosixThreadFactory.cpp b/lib/cpp/src/concurrency/PosixThreadFactory.cpp index 88849475..fe5ba123 100644 --- a/lib/cpp/src/concurrency/PosixThreadFactory.cpp +++ b/lib/cpp/src/concurrency/PosixThreadFactory.cpp @@ -118,6 +118,11 @@ class PthreadThread: public Thread { } // Set thread policy + #ifdef _WIN32 + //WIN32 Pthread implementation doesn't seem to support sheduling policies other then PosixThreadFactory::OTHER - runtime error + policy_ = PosixThreadFactory::OTHER; + #endif + if (pthread_attr_setschedpolicy(&thread_attr, policy_) != 0) { throw SystemResourceException("pthread_attr_setschedpolicy failed"); } @@ -245,7 +250,7 @@ class PosixThreadFactory::Impl { max_priority = sched_get_priority_max(pthread_policy); #endif int quanta = (HIGHEST - LOWEST) + 1; - float stepsperquanta = (max_priority - min_priority) / quanta; + float stepsperquanta = (float)(max_priority - min_priority) / quanta; if (priority <= HIGHEST) { return (int)(min_priority + stepsperquanta * priority);