250x250
Notice
Recent Posts
Recent Comments
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
Tags
- Exception
- Tomcat
- ubuntu
- JavaScript
- MSSQL
- git
- myBatis
- Spring Boot
- JDBC
- spring
- 오픈소스
- IntelliJ
- Python
- STS
- 설정
- Open Source
- SpringBoot
- Docker
- 문서
- oracle
- Eclipse
- error
- AJAX
- Thymeleaf
- PostgreSQL
- Source
- MySQL
- jpa
- maven
- Core Java
Archives
- Today
- Total
헤르메스 LIFE
Thread 를 이용한 데몬 프로그램 본문
728x90
프로젝트를 진행하면서 몇 분 및 몇 초 단위로 어떤 Application을 실행시켜야할 경우가 생깁니다.
Thread를 공부하면서 한번 만들어 봤습니다... 참고하세요... ^^*
주의해야 할 점은, Runtime을 이용해서 Java 애플리케이션을 실행시키면 실행이 되는지 그 결과를 알 수 없습니다.
그래서 InputStream을 이용해서 읽어서 출력해야 합니다.
package example.threadtest;
public class ThreadTest {
public static void main(String[] args)
{
ThreadDeamon thread = new ThreadDeamon();
thread.start();
}
}
package example.threadtest;
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.text.SimpleDateFormat;
import java.util.Date;
public class ThreadDeamon extends Thread {
public void run() {
try {
synchronized(this) {
int i = 0;
while(true) {
System.out.println(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date())); // 시간출력
Thread.sleep(1000); // 1초간 멈춤.
Runtime tr = Runtime.getRuntime();
Process dir = tr.exec("java -cp .;e:\\workspace\\my_project example/threadtest/ExecuteFile"); 자바 App 실행
// Runtime을 이용해서 Java 애플리케이션을 실행시키면 실행이 되는지 그 결과를 알 수 없습니다.
// 그래서 InputStream을 이용해서 읽어서 출력해야 합니다.
BufferedReader reader = new BufferedReader( new InputStreamReader(dir.getInputStream()));
String line = null;
while( (line = reader.readLine()) != null) {
System.out.println(line);
}
}
}
} catch(InterruptedException ie) {
ie.printStackTrace();
} catch(Exception e) {
e.printStackTrace();
}
}
}
package example.threadtest;
public class ExecuteFile {
public static void main(String[] args) {
System.out.println("Execute File ...........");
}
}
728x90
'Core Java' 카테고리의 다른 글
[HttpURLConnection] jsp 파일의 실행 (0) | 2020.12.17 |
---|---|
외부프로그램 실행시키기 (0) | 2020.12.17 |
BigDecimal타입의 사칙연산 (0) | 2020.12.17 |
Java에서 Stored Procedure 실행 (0) | 2020.12.17 |
jxl의 사용 (0) | 2020.12.17 |