本文整理汇总了Java中javax.annotation.concurrent.NotThreadSafe类的典型用法代码示例。如果您正苦于以下问题:Java NotThreadSafe类的具体用法?Java NotThreadSafe怎么用?Java NotThreadSafe使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。
NotThreadSafe类属于javax.annotation.concurrent包,在下文中一共展示了NotThreadSafe类的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: newDirectoryStream
import javax.annotation.concurrent.NotThreadSafe; //导入依赖的package包/类
DirectoryStream<Path> newDirectoryStream(
final TPath path,
final Filter<? super Path> filter)
throws IOException {
final FsNode entry = stat(path);
final Set<String> set;
if (null == entry || null == (set = entry.getMembers()))
throw new NotDirectoryException(path.toString());
@NotThreadSafe
class Adapter implements Iterator<Path> {
final Iterator<String> it = set.iterator();
@Override
public boolean hasNext() {
return it.hasNext();
}
@Override
public Path next() {
return path.resolve(it.next());
}
@Override
public void remove() {
throw new UnsupportedOperationException("Not supported yet.");
}
} // Adapter
@NotThreadSafe
class FilterIterator extends FilteringIterator<Path> {
FilterIterator() { super(new Adapter()); }
@Override
protected boolean accept(Path element) {
try {
return filter.accept(element);
} catch (IOException ex) {
throw new DirectoryIteratorException(ex);
}
}
} // FilterIterator
return new Stream(new FilterIterator());
}