- 所有父级接口:
DocPrintJob
打印应用程序使用此接口取消打印作业。该接口扩展了
DocPrintJob 。如果可以取消打印作业,则从打印服务返回的 DocPrintJob 实现会实现此接口。在尝试取消打印作业之前,客户端需要测试从打印服务返回的 DocPrintJob 对象是否实际实现了该接口。客户端永远不应该假设 DocPrintJob 实现了这个接口。打印服务可能仅支持取消某些类型的打印数据和表示类名称。这意味着只有一些从服务返回的 DocPrintJob 对象会实现这个接口。
鼓励服务实现者实现此可选接口,并在通过此接口的实现成功取消作业时向任何监听器传递 PrintJobEvent.JOB_CANCELED 事件。服务还应注意,与发出打印请求的线程不同,此方法的实现可能是从一个单独的客户端线程进行的。因此这个接口的实现必须是线程安全的。
-
方法总结
-
方法详情
-
cancel
停止进一步处理打印作业。如果服务支持此方法,则无法断定作业取消将始终成功。作业一旦达到并超过其处理过程中的某个点,就可能无法取消。取消成功仅表示整个作业未打印,取消返回时可能部分已打印。
如果取消不成功,该服务将抛出
PrintException。尚未提交打印的作业应抛出此异常。取消已经成功取消的打印作业不会被视为错误并且总是会成功。某些服务的取消可能是一个漫长的过程,涉及对服务的请求及其打印队列的处理。客户端可能希望在不影响应用程序执行的线程中执行取消。
- 抛出:
PrintException- 如果作业无法成功取消
-