Đây là kiểu cổ điển - làm cách nào bạn có thể .read() nếu không có gì để đọc? NIO rõ ràng là hiệu suất chuyên sâu, dành riêng để đạt được io không chặn. Hãy thử làm nio trên Socket.read() - bạn vẫn sẽ nhận được hoặc là một hoạt động chặn hoặc rơi qua thời gian chờ ... không có số lượng ưa thích sẽ gây ra dữ liệu xuất hiện trên 'cổng', trừ khi bạn tạo ra một số dữ liệu ...
final SecureRandom dataGenerator = SecureRandom.getInstance("SHA1PRNG");
final Integer range = new Integer('z' - 'a');
for (big loop)
{
buffer.append(dataGenerator.nextInt (range.intValue() + (int) 'a'));
// ............
do.something(buffer.toString());
Giờ đây, kỹ năng phát triển của bạn sẽ di chuyển, ngay cả khi ở tốc độ Glacial Pace nhưng chúng di chuyển.
try {
// Create a read/writeable file channel
File file = new File("filename");
FileChannel channel = new RandomAccessFile(file, "rw").getChannel();
// Create an output stream on the channel
OutputStream os = Channels.newOutputStream(channel);
// Create an inputstream on the channel
InputStream is = Channels.newInputStream(channel);
// Close the channel
is.close();
} catch (IOException e) {
}
nhắn chỉnh sửa: Tôi nắm bắt phản ứng quan trọng của bạn, chờ đến mười hai ngàn bạn dòng vào CORBA cố gắng để thực hiện readObjectNoData() (hữu dụng cho khởi tạo đối tượng deserialized đúng mặc dù một dòng suối nguồn "thù địch" hoặc không đầy đủ)
Mã psuedo một lần của tôi được mong đợi cung cấp một số loại luồng dữ liệu để giải mã, tải lại hoặc bất kỳ thứ gì - tôi đọc lại bài đăng của bạn; Tôi nghĩ rằng nó nói làm thế nào để đọc() không chặn io trên một đối tượng có thể không có ... mà khoan sâu vào các vấn đề được biết đến của ngoại lệ và lập kế hoạch, được dicey cố gắng để làm việc này với một người hỏi câu hỏi theo cách bạn đã diễn đạt nó, cố gắng diễn đạt lại và để người khác giải thích cho tôi điều bạn đang hỏi.
Tôi sẽ chuyển đến vị trí taco ngay tại thời điểm này.
Nguồn
2009-09-26 18:44:46
có thể bạn có thể sử dụng phương thức available() nếu luồng để thăm dò ý kiến nếu có byte được đọc. – clamp
typo: tất nhiên nên đọc "... của luồng .." – clamp