Tijdslimiet instellen bij opslaan

Tijdslimiet instellen bij opslaan

Aspose.CAD voor Java API stelt je in staat om een tijdslimiet in te stellen bij het opslaan. Dit kan nuttig zijn in gevallen waarin het opslaan veel tijd kost of veel geheugen verbruikt. Hiervoor biedt de API de InterruptionTokenSource klasse. De InterruptionTokenSource klasse levert een token dat wordt gebruikt om lange bewerkingen te onderbreken.

Voorbeeldcode

De volgende codefragment demonstreert het gebruik van de 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();
}