示例

public class ClassA {

private Pattern pattern;

public void makePattern( Device device, Image image ) {

pattern = new Pattern( device, image );

if ( !pattern.isDisposed() ) {
//do something...
}
}
}



解决方案
为了避免资源泄漏,请确保对每个 org.eclipse.swt.graphics.Pattern 都调用 dispose()。
注意:此规则适用于所有形式的 Pattern 构造函数。


public class ClassA {

private Pattern pattern;

public void makePattern( Device device, Image image ) {

pattern = new Pattern( device, image );

if ( !pattern.isDisposed() ) {
//do something...
}
pattern.dispose();
}
}