using System;
using System.Collections .Generic ;
using System.Linq ;
using System.Text ;
using System.Threading .Tasks ;
namespace ConsoleApplication1
{
class Program
{
static void Main( string[ ] args)
{
// 非同期で1文字読み取るタスク
Func< ConsoleKeyInfo> readAsync = ( ) => Console.ReadKey ( true ) ;
var task = Task.Factory .StartNew ( readAsync) ;
while ( true )
{
if ( task.IsCompleted )
{
Console.WriteLine ( task.Result .KeyChar + "が押されました" ) ;
if ( task.Result .KeyChar == 'D' )
{
//ここでは文字列を得たい
string input = Console.ReadLine ( ) ;
Console.WriteLine ( input + "が入力されました" ) ;
if ( input == "sss" )
{
//sssが入力された時、処理を行う
break ;
}
}
task = Task.Factory .StartNew ( readAsync) ;
}
}
}
}
}
dXNpbmcgU3lzdGVtOwp1c2luZyBTeXN0ZW0uQ29sbGVjdGlvbnMuR2VuZXJpYzsKdXNpbmcgU3lzdGVtLkxpbnE7CnVzaW5nIFN5c3RlbS5UZXh0Owp1c2luZyBTeXN0ZW0uVGhyZWFkaW5nLlRhc2tzOwoKbmFtZXNwYWNlIENvbnNvbGVBcHBsaWNhdGlvbjEKewogICAgY2xhc3MgUHJvZ3JhbQogICAgewogICAgICAgIHN0YXRpYyB2b2lkIE1haW4oc3RyaW5nW10gYXJncykKICAgICAgICB7CiAgICAgICAgICAgIC8vIOmdnuWQjOacn+OBpzHmloflrZfoqq3jgb/lj5bjgovjgr/jgrnjgq8KICAgICAgICAgICAgRnVuYzxDb25zb2xlS2V5SW5mbz4gcmVhZEFzeW5jID0gKCkgPT4gQ29uc29sZS5SZWFkS2V5KHRydWUpOwogICAgICAgICAgICB2YXIgdGFzayA9IFRhc2suRmFjdG9yeS5TdGFydE5ldyhyZWFkQXN5bmMpOwoKICAgICAgICAgICAgd2hpbGUgKHRydWUpCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIGlmICh0YXNrLklzQ29tcGxldGVkKQogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIENvbnNvbGUuV3JpdGVMaW5lKHRhc2suUmVzdWx0LktleUNoYXIgKyAi44GM5oq844GV44KM44G+44GX44GfIik7CgogICAgICAgICAgICAgICAgICAgIGlmICh0YXNrLlJlc3VsdC5LZXlDaGFyID09ICdEJykKICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgIC8v44GT44GT44Gn44Gv5paH5a2X5YiX44KS5b6X44Gf44GECiAgICAgICAgICAgICAgICAgICAgICAgIHN0cmluZyBpbnB1dCA9IENvbnNvbGUuUmVhZExpbmUoKTsKICAgICAgICAgICAgICAgICAgICAgICAgQ29uc29sZS5Xcml0ZUxpbmUoaW5wdXQgKyAi44GM5YWl5Yqb44GV44KM44G+44GX44GfIik7CgogICAgICAgICAgICAgICAgICAgICAgICBpZiAoaW5wdXQgPT0gInNzcyIpCiAgICAgICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vc3Nz44GM5YWl5Yqb44GV44KM44Gf5pmC44CB5Yem55CG44KS6KGM44GGCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAgICAgdGFzayA9IFRhc2suRmFjdG9yeS5TdGFydE5ldyhyZWFkQXN5bmMpOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgfQogICAgfQp9Cg==
compilation info
prog.cs(5,24): error CS0234: The type or namespace name `Tasks' does not exist in the namespace `System.Threading'. Are you missing an assembly reference?
Compilation failed: 1 error(s), 0 warnings
stdout