1: class FileMgmtThread extends Thread { 2: 3: private String manageType = ""; 4: 5: public FileMgmtThread (String type) { 6: manageType = type; 7: } 8: 9: public void run() { 10: try { 11: if ( manageType.equals("READ") ) { 12: File f = new File("Test_367.txt"); 13: if (f.exists()) { // 만약 파일이 존재하면 파일내용을 읽음 14: BufferedReader br = new BufferedReader(new FileReader(f)); 15: br.close(); 16: } 17: } else if ( manageType.equals("DELETE") ) { 18: File f = new File("Test_367.txt"); 19: if (f.exists()) { // 만약 파일이 존재하면 파일을 삭제함 20: f.delete(); 21: } else { 22: ; 23: } 24: } 25: } catch (IOException e) { 26: } 27: } 28: } 29: 30: public class CWE367 { 31: public static void main(String[] args) { 32: // 파일의 읽기와 파일을 삭제하는 것을 동시에 수행한다. 33: FileMgmtThread fileAccessThread = new FileMgmtThread("READ"); 34: FileMgmtThread fileDeleteThread = new FileMgmtThread("DELETE"); 35: fileAccessThread.start(); 36: fileDeleteThread.start(); 37: } 38: }