Want to ruin the surprise?
Well, you asked for it!
[tkwon@bob1 hpx_build]$ make -j16 tests.performance.parallel_algorithms.local_.benchmark_is_heap | |
Scanning dependencies of target hpx_init | |
[ 8%] Building CXX object src/CMakeFiles/hpx_init.dir/hpx_main.cpp.o | |
[ 8%] Building CXX object src/CMakeFiles/hpx_init.dir/hpx_main_variables_map.cpp.o | |
[ 8%] Building CXX object src/CMakeFiles/hpx_init.dir/hpx_main_winsocket.cpp.o | |
[ 8%] Building CXX object src/CMakeFiles/hpx_init.dir/hpx_main_argc_argv.cpp.o | |
[ 8%] Building CXX object src/CMakeFiles/hpx_init.dir/hpx_user_main.cpp.o | |
[ 8%] Building CXX object src/CMakeFiles/hpx_init.dir/hpx_user_main_argc_argv.cpp.o | |
[ 8%] Building CXX object src/CMakeFiles/hpx_init.dir/util/lightweight_test.cpp.o | |
[ 8%] Building CXX object src/CMakeFiles/hpx_init.dir/main.cpp.o |
#include <thread> | |
#include <chrono> | |
#include <hpx/dataflow.hpp> | |
void haaam(int& i) | |
{ | |
using namespace std::chrono_literals; | |
std::this_thread::sleep_for(2s); | |
std::cout << "[haaam] start" << std::endl; | |
std::this_thread::sleep_for(2s); | |
std::cout << "[haaam] end" << std::endl; |
// Copyright (c) 2007-2017 Hartmut Kaiser | |
// Copyright (c) 2015 Daniel Bourgeois | |
// Copyright (c) 2017 Taeguk Kwon | |
// | |
// 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) | |
#if !defined(HPX_PARALLEL_UTIL_SCAN_PARTITIONER_DEC_30_2014_0227PM) | |
#define HPX_PARALLEL_UTIL_SCAN_PARTITIONER_DEC_30_2014_0227PM |
// Copyright (c) 2007-2017 Hartmut Kaiser | |
// Copyright (c) 2015 Daniel Bourgeois | |
// Copyright (c) 2017 Taeguk Kwon | |
// | |
// 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) | |
#if !defined(HPX_PARALLEL_UTIL_SCAN_PARTITIONER_DEC_30_2014_0227PM) | |
#define HPX_PARALLEL_UTIL_SCAN_PARTITIONER_DEC_30_2014_0227PM |
template <typename T> | |
struct ensure_future | |
{ | |
typedef hpx::future<T> type; | |
static type get(T && t) | |
{ | |
return hpx::make_ready_future(std::move(t)); | |
} |
<details open> | |
<summary>Want to ruin the surprise?</summary> | |
<br> | |
Well, you asked for it! | |
<details> |
// Test on MSVC 2015 Update 3 | |
#include <exception> | |
#include <typeinfo> | |
template <typename T> | |
class A : T | |
{ | |
}; | |
template <typename T> |
// run js codes in https://github.com/watching | |
Array.prototype.slice.call( | |
document.querySelectorAll('.clearfix') | |
).map(function (row) { | |
if (row.querySelector('div:first-child').innerText.indexOf('ORGANIZATION_NAME/') >= 0) { | |
row.querySelector('button').click() | |
} | |
}) | |
location.reload() |