SqlCommand.EndExecuteNonQuery(IAsyncResult) 메서드
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
Transact-SQL 문의 비동기 실행을 완료합니다.
public:
int EndExecuteNonQuery(IAsyncResult ^ asyncResult);
public int EndExecuteNonQuery(IAsyncResult asyncResult);
member this.EndExecuteNonQuery : IAsyncResult -> int
Public Function EndExecuteNonQuery (asyncResult As IAsyncResult) As Integer
매개 변수
- asyncResult
- IAsyncResult
IAsyncResult 호출에서 반환되는 입니다BeginExecuteNonQuery().
반품
영향을 받는 행의 수(동작과 동일 ExecuteNonQuery())입니다.
예외
asyncResult 매개 변수가 null입니다(Microsoft Visual Basic Nothing).
EndExecuteNonQuery(IAsyncResult)는 단일 명령 실행을 위해 두 번 이상 호출되었거나 메서드가 해당 실행 메서드와 일치하지 않습니다(예: 호출 BeginExecuteXmlReader()실행을 완료하기 위해 호출된 EndExecuteNonQuery(IAsyncResult) 코드).
경과된 CommandTimeout 시간 및 지정된 비동기 작업이 BeginExecuteNonQuery 완료되지 않았습니다.
-또는-
경우에 따라 IAsyncResult 잘못 설정할 IsCompleted 수 있습니다. 이 문제가 발생하고 EndExecuteNonQuery(IAsyncResult) 호출되면 EndExecuteNonQuery는 경과된 CommandTimeout 시간 및 지정된 BeginExecuteNonQuery 비동기 작업이 완료되지 않은 경우 SqlException 오류를 발생시킬 수 있습니다. 이 상황을 해결하려면 CommandTimeout 값을 늘리거나 비동기 작업으로 수행되는 작업을 줄여야 합니다.
예제
메서드 사용을 EndExecuteNonQuery 보여주는 예제는 다음을 참조하세요 BeginExecuteNonQuery.
설명
BeginExecuteNonQuery 호출하여 Transact-SQL 문을 실행하는 경우 작업을 완료하려면 EndExecuteNonQuery 호출해야 합니다. 명령을 실행하는 프로세스가 아직 완료되지 않은 경우 이 메서드는 작업이 완료될 때까지 차단합니다. 사용자는 메서드에서 반환 BeginExecuteNonQuery 된 인스턴스를 사용하여 명령이 IAsyncResult 작업을 완료했는지 확인할 수 있습니다. 호출에서 콜백 프로시저를 지정한 경우 이 메서드를 BeginExecuteNonQuery호출해야 합니다.