[
https://issues.apache.org/jira/browse/GEODE-2493?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15869213#comment-15869213
]
Jacob S. Barrett edited comment on GEODE-2493 at 2/25/17 6:05 AM:
------------------------------------------------------------------
-Replace {{HostAsm::nanoSleep}} and {{ACE_OS::nanosleep}} with
{{[std::this_thread::sleep_for|http://en.cppreference.com/w/cpp/thread/sleep_for]}}
using
{{[std::crono::nanoseconds|http://en.cppreference.com/w/cpp/chrono/duration]}}.-
All uses were eliminated when removing SpinLock.
was (Author: jbarrett):
Replace {{HostAsm::nanoSleep}} and {{ACE_OS::nanosleep}} with
{{[std::this_thread::sleep_for|http://en.cppreference.com/w/cpp/thread/sleep_for]}}
using
{{[std::crono::nanoseconds|http://en.cppreference.com/w/cpp/chrono/duration]}}.
> Replace the locking and CAS operations provided in HostAsm with C++11
> standards
> -------------------------------------------------------------------------------
>
> Key: GEODE-2493
> URL: https://issues.apache.org/jira/browse/GEODE-2493
> Project: Geode
> Issue Type: Task
> Components: native client
> Reporter: Jacob S. Barrett
>
> Several platform specific locking and CAS operations are implemented in
> HostAsm and related files. These are not portable and require porting
> efforts. They are also not well tested. Converting the C++11 standards allows
> the compiler to choose the code or instructions that optimize the behavior
> required. Most if not all of the functions these files provide can be
> replaced with C++11 standard functions.
> Some Examples:
> On Solaris SPAC we have inline assembly.
> On Solaris x86 we use Solaris specific runtime functions.
> On Windows we use really old Win32 functions that have some non-standard
> behavior.
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)