좋아요, 근본적으로는 제가 작업하고있는 프로그램에 대해 생각해 볼 수있는 가장 어려운 해결 방법을 만들었고 지금은 프로그램 자체 만 제외하고 모든 것이 작동하도록했습니다.자바의 스레드에서 메소드 실행하기
public static void main(String[] args) {
SwingUtilities.invokeLater(new Runnable() {
Thread thread = new Thread(new thread2());
public void run() {
thread.start();
double startTime = System.nanoTime();
SortingStuff ss = new SortingStuff();
ss.setVisible(true);
double endTime = System.nanoTime();
double elapsedTime = endTime - startTime;
System.out.println("This operation took " + elapsedTime + " nanoseconds, which is :" + ((elapsedTime/1000000)/1000) + " seconds."); // This will be better later
}
});
}
그리고 다음 thread2 실행 가능한이 같은 것입니다 : 나는에서 정적 메소드를 호출하고 싶다면, 지금
public static class thread2 implements Runnable{
public void run() {
System.out.println("thread " +Thread.currentThread().getName());
}
그래서, 여기에 내가 함께 일하고 있어요 코드는 쓰레드가 생성되었습니다. 어떻게 할 수 있습니까? 나는 "bubbleSort"라는 메서드를 가지고 있는데,이 메서드는 생성 된 스레드 내에서 작동하지 않습니다. 도움?
public static void bubbleSort(final String numbers[], final JButton numButton[]){
// 그러나 나는 실행 영역에 넣을 수없고, 나는 그것이 실행 어디에 외부에서 다른 스레드에 액세스 할 수없는 것, 메소드의 골격입니다. 어어! 어느 스레드가 정적 메서드 호출에서 하나라도 실행 가능한 구현하는 해당 스레드에서 실행되지 않습니다 클래스에서 정적 메소드를 실행 ./Frustrated
여기서'bubbleSort'가 어디에 정의되어 있습니까? – ggreiner
sortingStuff로 알려진 최상위 클래스에 정의되어 있습니다. – HunderingThooves
이 프로그램의 전체 코드는 다음에서 사용할 수 있습니다. http://ideone.com/RORWD 현재 사용되지 않는 많은 가져 오기가 나중에 사용됩니다. – HunderingThooves