w********p 发帖数: 948 | 1 【 以下文字转载自 JobHunting 讨论区 】
发信人: whitetulip (白色郁丁香), 信区: JobHunting
标 题: 求Java8大牛们帮忙看看这个multithread的面试题。
发信站: BBS 未名空间站 (Tue May 19 01:17:24 2015, 美东)
1. generates 100 文件,每个文件有10,000行,每行10个数字,每个数字8位
2. 读10 文件,uses fork/join paradigm to map/reduce。 先sort 每个文件,然后
merge多个文件,outputs results 到一个output 文件,每行10个数字,每个数字8位
假设程序是在production环境里。
---
问题1. java8, java nio里提供了
Files.lines(Paths.get(OUTPUT_DIR + fileName)).
collect(Collectors.toList());
我的理解是这个在java8里应该已经是multithread的了。
但是如果我想同时multithread读10 files. 该怎么写?
问题2. java8 里要怎样同时写(writer) 十个files
//像是java6里开10个Threads, 这个我是会的。
还有java8里到底用什么操作Files,也有很多的讨论。
是用Using java.nio.file.Files
还是FileChannel
还是FileChannel and memory mapped file
还是FileChannel and Direct Memory Access
还是RandomAccessFile
求java8大牛们不吝赐教 |
|