Export (0) Print
Expand All
Expand Minimize
4 out of 6 rated this helpful - Rate this topic

CancelSynchronousIo function

Marks pending synchronous I/O operations that are issued by the specified thread as canceled.

Syntax


BOOL WINAPI CancelSynchronousIo(
  _In_  HANDLE hThread
);

Parameters

hThread [in]

A handle to the thread.

Return value

If the function succeeds, the return value is nonzero.

If the function fails, the return value is 0 (zero). To get extended error information, call the GetLastError function.

If this function cannot find a request to cancel, the return value is 0 (zero), and GetLastError returns ERROR_NOT_FOUND.

Remarks

The caller must have the THREAD_TERMINATE access right.

If there are any pending I/O operations in progress for the specified thread, the CancelSynchronousIo function marks them for cancellation. Most types of operations can be canceled immediately; other operations can continue toward completion before they are actually canceled and the caller is notified. The CancelSynchronousIo function does not wait for all canceled operations to complete. For more information, see I/O Completion/Cancellation Guidelines.

The operation being canceled is completed with one of three statuses; you must check the completion status to determine the completion state. The three statuses are:

  • The operation completed normally. This can occur even if the operation was canceled, because the cancel request might not have been submitted in time to cancel the operation.
  • The operation was canceled. The GetLastError function returns ERROR_OPERATION_ABORTED.
  • The operation failed with another error. The GetLastError function returns the relevant error code.

In Windows 8 and Windows Server 2012, this function is supported by the following technologies.

TechnologySupported

Server Message Block (SMB) 3.0 protocol

Yes

SMB 3.0 Transparent Failover (TFO)

Yes

SMB 3.0 with Scale-out File Shares (SO)

Yes

Cluster Shared Volume File System (CsvFS)

Yes

Resilient File System (ReFS)

Yes

 

Requirements

Minimum supported client

Windows Vista [desktop apps only]

Minimum supported server

Windows Server 2008 [desktop apps only]

Header

IoAPI.h (include Windows.h);
WinBase.h on Windows Server 2008 R2, Windows 7, Windows Server 2008, and Windows Vista (include Windows.h)

Library

Kernel32.lib

DLL

Kernel32.dll

See also

CancelIo
CancelIoEx
File Management Functions
Synchronous and Asynchronous I/O

 

 

Did you find this helpful?
(1500 characters remaining)
Thank you for your feedback

Community Additions

ADD
Show:
© 2014 Microsoft. All rights reserved.