본문 바로가기

백엔드기술/개발언어55

임시 참조 - 루씬 한글형태소분석기 사용하기(main) /* * To change this template, choose Tools | Templates * and open the template in the editor. */ package analysertest2; import java.io.FileWriter; import java.io.IOException; import java.io.StringReader; import java.io.Writer; import java.util.List; import java.util.logging.Level; import java.util.logging.Logger; import kr.org.kisti.morph.DBConnection; import kr.org.kisti.morph.KMSMorphUtil; imp.. 2010. 5. 25.
임시 참조 package kr.org.kisti.morph.test; import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; import java.io.InputStreamReader; import java.io.OutputStreamWriter; import java.util.ArrayList; import java.util.List; import java.util.StringTokenizer; /** * * @author admin */ public class Comparer { private.. 2010. 5. 25.
뮤텍스 (Mutex) 상호 배제 상호 배제(mutual exclusion, Mutex, 뮤텍스)는 동시 프로그래밍에서 공유 불가능한 자원의 동시 사용을 피하기 위해 사용되는 알고리즘으로, 임계 구역(critical section)으로 불리는 코드 영역에 의해 구현된다.공유 불가능한 자원의 예로는 동시에 실행되고 있는 프로그램간의 통신에 사용되는 비트 단위의 깃발, 계수기, 큐 등이다. 문제는 스레드가 언제라도 정지되거나 시작될 수 있다는 것이다.예) 프로그램의 일부분이 여러 단계를 거치면서 데이터를 읽고 쓰고 있다고 하자. 그런데 예상치 못한 사건 등에 의해 다른 스레드가 동작하기 시작했다. 첫 번째의 스레드가 쓰고 있는 영역에서, 이 두 번째의 스레드가 또 다른 작업을 시작한다면, 해당 영역의 값은 부적절하며 예상할 수 없.. 2009. 12. 9.
프로세스와 스레드 스레드(thread)는 어떠한 프로그램 내에서, 특히 프로세스 내에서 실행되는 흐름의 단위를 말한다. 일반적으로 한 프로그램은 하나의 스레드를 가지고 있지만, 프로그램 환경에 따라 둘 이상의 스레드를 동시에 실행할 수 있다. 이러한 실행 방식을 멀티스레드(multithread)라고 한다. 멀티프로세스와 멀티스레드는 양쪽 모두 여러 흐름이 동시에 진행된다는 공통점을 가지고 있다. 하지만 멀티프로세스에서 각 프로세스는 독립적으로 실행되며 각각 별개의 메모리를 차지하고 있는 것과 달리 멀티스레드는 프로세스 내의 메모리를 공유해 사용할 수 있다. 또한 프로세스 간의 전환 속도보다 스레드 간의 전환 속도가 빠르다. 멀티스레드의 다른 장점은 CPU가 여러 개일 경우에 각각의 CPU가 스레드 하나씩을 담당하는 방법으.. 2009. 12. 9.
Shuffle Array package shufflearray; import java.util.Random; /** * * @author hwang */ public class Main { public static void main(String[] args) { int[] arr = {10,20,30,50,60,20}; Random r = new Random(); int[] newArr; for(int i = 0 ; i < 10 ; ++i) { newArr = shuffleArray(r, arr); for(int n : newArr) { System.out.print(n); System.out.print(" "); } System.out.println(""); } } public static int[] shuffleArray(R.. 2009. 12. 9.
Swing Demo package java_samples_hwang; import javax.swing.*; import java.awt.event.*; import java.awt.*; /** * * @author hwang */ public class SwingDemo { JTextField txtfld ; public void createGUI() { JFrame frame = new JFrame("Hello World Swing"); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); Container cp = frame.getContentPane(); JButton button = new JButton("push button"); txtfld = new JTextFiel.. 2009. 12. 9.