![]()
#include <ppltasks.h>
#include <string>
#include <windows.h>
using namespace concurrency;
using namespace std;
int wmain()
{
auto t = create_task([]()
{
DWORD ms;
wchar_t str[40];
for (int i = 0; i < 3; i++)
{
ms = GetTickCount(); // Win32 API()
swprintf(str, 40, L"A: Time %d ミリ秒\n", ms);
OutputDebugString(str);
Sleep(rand() % 100);
}
});
t.then([]()
{ OutputDebugString(L"Run Task\n");
}).wait();
}
|
A: Time 85645875 ミリ秒 A: Time 85645906 ミリ秒 A: Time 85646375 ミリ秒 Run Task |
![]()
int wmain()
{
auto t = create_task([]()
{
DWORD ms;
wchar_t str[40];
for (int i = 0; i < 3; i++)
{
ms = GetTickCount(); // Win32 API()
swprintf(str, 80, L"A: Time %d ミリ秒\n", ms);
OutputDebugString(str);
Sleep(rand() % 1000);
}
return create_task([]()
{
DWORD ms;
wchar_t str[40];
for (int i = 0; i < 3; i++)
{
ms = GetTickCount(); // Win32 API()
swprintf(str, 80, L"B: Time %d ミリ秒\n", ms);
OutputDebugString(str);
Sleep(rand() % 1000);
}
});
});
t.then([]()
{ OutputDebugString(L"Run Task\n");
}).wait();
}
|
A: Time 85926562 ミリ秒 A: Time 85926609 ミリ秒 A: Time 85927078 ミリ秒 B: Time 85927406 ミリ秒 B: Time 85927906 ミリ秒 B: Time 85928078 ミリ秒 Run Task |
![]()
int wmain()
{
auto t = create_task([]()
{
DWORD ms;
wchar_t str[40];
for (int i = 0; i < 3; i++)
{
ms = GetTickCount(); // Win32 API()
swprintf(str, 80, L"A: Time %d ミリ秒\n", ms);
OutputDebugString(str);
Sleep(rand() % 1000);
}
});
auto t2 = create_task([]()
{
DWORD ms;
wchar_t str[40];
for (int i = 0; i < 3; i++)
{
ms = GetTickCount(); // Win32 API()
swprintf(str, 80, L"B: Time %d ミリ秒\n", ms);
OutputDebugString(str);
Sleep(rand() % 200);
}
});
(t && t2).then([]()
{ OutputDebugString(L"Run A: B: Task END\n");
}).wait();
}
|
A: Time 89711031 ミリ秒 B: Time 89711031 ミリ秒 B: Time 89711062 ミリ秒 A: Time 89711062 ミリ秒 B: Time 89711140 ミリ秒 A: Time 89711531 ミリ秒 Run A: B: Task END |
![]()
[Next Chapter ↓] Task の関数値
※・