3. Thread
스레드
- 스레드

Untitled Thread t = new Thread(); t.start();// Runnable 객체를 Thread의 생성자로 전달하여 Runnable에 할당된 작업을 수행하는 // 스레드를 시작 Thread t = new Thread(myRunnableObject); t.start();public class ReturnDigest extends Thread { private String filename; private byte[] digest; public ReturnDigest(String filename) { this.filename = filename; } @Override public void run() { try{ FileInputStream in = new FileInputStream(filename); MessageDigest sha = MessageDigest.getInstance("SHA-256"); DigestInputStream din = new DigestInputStream(in, sha); while(din.read() != -1); din.close(); digest = sha.digest(); } catch (IOException | NoSuchAlgorithmException e) { System.out.println(e); } } public byte[] getDigest() { return digest; } }public class ReturnDigestUserInterface { public static void main(String[] args) { for (String filename : args) { //digest 게산 ReturnDigest returnDigest = new ReturnDigest(filename); returnDigest.start(); //result 출력 StringBuilder result = new StringBuilder(filename); result.append(": "); byte[] digest = returnDigest.getDigest(); result.append(DatatypeConverter.printHexBinary(digest)); System.out.println(result); } } }
Last updated
