Testing if submit different type of function successfully.
113 {
114
116
118
121 std::future<int> future2 = m_ThreadPool.SubmitPoolTask(std::bind(&ThreadPoolFuncTest::Test0, &funcTestClass, 1, 2));
122 std::future<bool> future3 = m_ThreadPool.SubmitPoolTask(std::bind(&ThreadPoolFuncTest::Test1));
123 std::future<float> future4 = m_ThreadPool.SubmitPoolTask(std::bind(&ThreadPoolTestT<float, int&, std::string&&>, 2, ""));
124
125 std::future<bool> future5 = m_ThreadPool.SubmitPoolTask([&]() {
return funcTestClass.
Test(); });
126 std::future<std::string> future6 = m_ThreadPool.SubmitPoolTask([&]() {
return funcTestClass.
Test(
"Hello"); });
127 std::future<int> future7 = m_ThreadPool.SubmitPoolTask([&]() {
return funcTestClass.
Test0(1, 2); });
128 std::future<bool> future8 = m_ThreadPool.SubmitPoolTask([&]() { return ThreadPoolFuncTest::Test1(); });
129 std::future<float> future9 = m_ThreadPool.SubmitPoolTask([&]() { return ThreadPoolTestT<float, int, std::string>(2, ""); });
130
131 std::future<bool> future10 = m_ThreadPool.SubmitPoolTask([](bool val) { return val; }, true);
132
133
134 EXPECT_EQ(future0.get(), true );
135 EXPECT_EQ(future1.get(), "Hello" );
136 EXPECT_EQ(future2.get(), 3 );
137 EXPECT_EQ(future3.get(), false );
138 EXPECT_EQ(future4.get(), 0.0f );
139
140 EXPECT_EQ(future5.get(), true );
141 EXPECT_EQ(future6.get(), "Hello" );
142 EXPECT_EQ(future7.get(), 3 );
143 EXPECT_EQ(future8.get(), false );
144 EXPECT_EQ(future9.get(), 0.0f );
145
146 EXPECT_EQ(future10.get(), true );
147 }
#define SPICESTEST_PROFILE_FUNCTION()
int Test0(int a, int b)
Basic Class Function.
bool Test()
Basic Override Class Function.