單項(xiàng)選擇題

你有一個(gè)需要大約執(zhí)行一分鐘的 SQL 查詢。為此,你使用如下的代碼段異步執(zhí)行這個(gè)查詢:IAsyncResult ar = cmd.BeginExecuteReader()。當(dāng)上面SQL查詢?cè)趫?zhí)行的過(guò)程中,你需要同時(shí)執(zhí)行一個(gè)方法Do Work(),這個(gè)方法大約需要1秒鐘的執(zhí)行時(shí)間。而且在SQL 查詢執(zhí)行的過(guò)程中需要盡可能的多次執(zhí)行Do Work()方法,你應(yīng)該使用下面那個(gè)代碼段?()

A. while (ar.AsyncWaitHandle == null) { DoWork();}dr = cmd.EndExecuteReader(ar);
B. while (!ar.IsCompleted) { DoWork();}dr = cmd.EndExecuteReader(ar);
C. while (Thread.CurrentThread.ThreadState == ThreadState.Running) { Do Work();}dr =cmd.EndExecuteReader(ar);
D. while (!ar.AsyncWaitHandle.WaitOne()) { DoWork();}dr = cmd.EndExecuteReader(ar);

微信掃碼免費(fèi)搜題