Multi-Thread Tasks
Function
Create multi-threaded tasks and initiate multiple instances to perform file operations.
Example Codes
The following is a code snippet of file deletion. For complete codes, see the HdfsExample class in com.huawei.bigdata.hdfs.examples.
// Service example 2: multi-thread tasks final int THREAD_COUNT = 2; for (int threadNum = 0; threadNum < THREAD_COUNT; threadNum++) { HdfsExampleThread example_thread = new HdfsExampleThread("hdfs_example_" + threadNum); example_thread.start(); } class HdfsExampleThread extends Thread { private final static Log LOG = LogFactory.getLog(HdfsExampleThread.class.getName()); /** * * @param threadName */ public HdfsExampleThread(String threadName) { super(threadName); } public void run() { HdfsExample example; try { example = new HdfsExample("/user/hdfs-examples/" + getName(), "test.txt"); example.test(); } catch (IOException e) { LOG.error(e); } } }
The example.test() method is the operation on files. The code is as follows:
/** * HDFS operation instance * * @throws IOException * @throws ParameterException * * @throws Exception * */ public void test() throws IOException { // Create a directory. mkdir(); // Write data into a file. write(); // Append data to a file. append(); // Read a file. read(); // Delete a file. delete(); // Delete a directory. rmdir(); }
Feedback
Was this page helpful?
Provide feedbackThank you very much for your feedback. We will continue working to improve the documentation.