Timeout festlegen beim Speichern

Timeout festlegen beim Speichern

Die Aspose.CAD for Java API ermöglicht es Ihnen, einen Timeout beim Speichern festzulegen. Dies kann hilfreich sein, wenn der Speicherprozess viel Zeit in Anspruch nimmt oder viel Speicher verbraucht. Hierfür bietet die API die InterruptionTokenSource Klasse. Die InterruptionTokenSource Klasse stellt ein Token zur Verfügung, das zur Unterbrechung langer Operationen verwendet wird.

Beispielcode

Der folgende Code-Ausschnitt zeigt die Verwendung der InterruptionTokenSource Klasse.

// For complete examples and data files, please go to https://github.com/aspose-cad/Aspose.CAD-for-Java
final String SourceDir = Utils.getDataDir_DWGDrawings();
final String OutputDir = Utils.getDataDir_Output();
final InterruptionTokenSource source = new com.aspose.cad.InterruptionTokenSource();
try {
final CadImage cadImageBig = (CadImage)Image.load(SourceDir + "Drawing11.dwg");
try {
CadRasterizationOptions rasterizationOptionsBig = new CadRasterizationOptions();
rasterizationOptionsBig.setPageWidth(cadImageBig.getSize().getWidth() / 2);
rasterizationOptionsBig.setPageHeight(cadImageBig.getSize().getHeight() / 2);
final PdfOptions CADfBig = new PdfOptions();
CADfBig.setVectorRasterizationOptions(rasterizationOptionsBig);
CADfBig.setInterruptionToken(source.getToken());
java.lang.Thread thread = new java.lang.Thread(new Runnable() {
@Override
public void run() {
try {
cadImageBig.save(OutputDir + "PutTimeoutOnSave_out.pdf", CADfBig);
} catch (Throwable th) {
System.out.println("interrupted !!!");
}
}
});
thread.start();
TimeUnit.SECONDS.sleep(3);
source.interrupt();
thread.join();
} finally {
cadImageBig.dispose();
}
} finally {
source.dispose();
}