<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet href="http://valley.egloos.com/rss/style/style.xsl" type="text/xsl" media="screen"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/">
	<channel>
		<title>이글루스 'thread' 태그 최근글</title>
		<link>http://valley.egloos.com/tag/thread</link>
		<description>thread</description>
		<language>ko</language>
		<pubDate>Wed, 23 May 2012 15:32:10 +0900</pubDate>
		<generator>Egloos</generator>
		<item>
	<title><![CDATA[[펌] 쓰레드 사용법]]></title>
	<link>http://heilow.egloos.com/83536</link>
	<guid>http://heilow.egloos.com/83536</guid>
	<description>
	<![CDATA[ 
// 데브피아(devpia) 가욱현, 정대원 님의 글을 토대로 함다.  1. 개요   현재 대부분의 OS는 프로세스 스케쥴링에 의해 프로그램의 멀티태스킹(Multi-tasking)을 지원하고 있다.  멀티태스킹이란 실행되고있는 프로그램을 일정 단위로 잘라서(slice) 순서대로 CPU를 사용하게끔 하는 것 인데,  사용자는 마치 동시에 여러 개의 프로그램이 실행되는 것처럼 느낄 수 있게 된다.  즉, CPU 사용률을 최대화 하고, 대기시간과 응답시간의 최소화를 가능케 해주는 방법이다.   이번에는 프로세스 한 개만 놓고 보자.  한 프로세스는 구성면에서 [텍스트]-[데이터]-[스택] 영역으로 구성되어있고, 기능면에서는 텍스트의 모듈들은 각각의 역할을 가지고 있다.  프로세스에서의 공유메모리영역을 제외한 부분	]]>
	</description>
	<pubDate>Wed, 23 May 2012 15:32:10 +0900</pubDate>
	<dc:creator><![CDATA[괴짜 개발자의 괴짜 서식지]]></dc:creator>
</item>
<item>
	<title><![CDATA[MFC Thread]]></title>
	<link>http://heilow.egloos.com/83530</link>
	<guid>http://heilow.egloos.com/83530</guid>
	<description>
	<![CDATA[ 
 Worker Thread : 메시지 루프를 가지고 있지 않다.User Interface Thread : 메시지 루프를 가지고 있다. Worker Thread  CWinThread* AfxBeginThread(함수,인자,우선순위,스택사이즈,플래그,보안);  //전역 함수함수 :  UINT (*pfn)(LPVOID pParam)인자 : LPVOID pParam우선순위 : THREAD_PRIORITY_NORMAL  (디폴트값)스택사이즈 : 0  (스레드 생성한 부모스레드와 같은 크기값 디폴트)플래그 : 0 (곧바로 실행) 정지하려면 CREATE_SUSPENDED, 재시작  ResumeThread()호출보안 : 그냥 NULL로 기억 관련 유용 메소드 (CWinThread)int GetThreadPriority()	]]>
	</description>
	<pubDate>Wed, 23 May 2012 15:29:27 +0900</pubDate>
	<dc:creator><![CDATA[괴짜 개발자의 괴짜 서식지]]></dc:creator>
</item>
<item>
	<title><![CDATA[[MFC] AfxbeginThread 사용과 해제 [소스 첨부]]]></title>
	<link>http://heilow.egloos.com/83491</link>
	<guid>http://heilow.egloos.com/83491</guid>
	<description>
	<![CDATA[ 
                     MFC로 쓰레드를 사용하기 위해 간단 예제 파일을 만들어 보았다.위에는 쓰레드시작 버튼을 누르면 EDITBOX1 과 EDITBOX2를 차례대로 1부터 10까지 출력하는 예제이다소스는 다음과 같다.  UINT CAfxbeginThreadTestDlg::ThreadStart1(LPVOID pParam)	]]>
	</description>
	<pubDate>Wed, 23 May 2012 14:51:52 +0900</pubDate>
	<dc:creator><![CDATA[괴짜 개발자의 괴짜 서식지]]></dc:creator>
</item>
<item>
	<title><![CDATA[어플리케이션에서 Thread를 돌렸는데 종료해도 계속 돌때..]]></title>
	<link>http://jjunda.egloos.com/5089123</link>
	<guid>http://jjunda.egloos.com/5089123</guid>
	<description>
	<![CDATA[ 
 어플을 종료해서 백그라운드에서 계속 돌아간다 서비스 아니면은 그럴일이 없다고했는데.. 잘못안건지.. 암튼.. 스레드도 계속 돌아간다..  그래서 어플리케이션 종료시 같이 죽도록 아래의 빨간색부분을 넣어줘야 한다..  mVersionCheckThread = new VersionCheckThread(getApplicationContext(), mHandler);       mVersionCheckThread.setDaemon(true);       mVersionCheckThread.start();	]]>
	</description>
	<pubDate>Tue, 06 Mar 2012 13:58:00 +0900</pubDate>
	<dc:creator><![CDATA[GoodDay and BadDay]]></dc:creator>
</item>
<item>
	<title><![CDATA[MFC progressbar thread]]></title>
	<link>http://katalog.egloos.com/4662535</link>
	<guid>http://katalog.egloos.com/4662535</guid>
	<description>
	<![CDATA[ 
출처 : http://mhspecial.tistory.com/39  환경 : WinXP SP3 / VisualStudio 2008 /    스레드(Thread) :하나의 응용프로그램에서 한번에 여러가지 작업을 할 수 있게끔 해주는 역할을 한다. Thread는 크게 두가지 종류가 있다. Worker Thread와 UI Thread가 그것이다.Worker Thread는 Thread가 작업을 하고 있을 때, 해당 Thread에 별도의 입력이 필요 없을 때 사용한다. 메시지 루프를 사용하지 않기 때문이다. 해당 Thread를 제외하고 다른 부분에서는 입력을 받을 수 있지만, Worker Therad 내에서의 동작중에서Worker Thread에 입력은 안된다.반면에 UI Therad의 경우 Thread의 작업을 하는	]]>
	</description>
	<pubDate>Wed, 04 Jan 2012 14:42:50 +0900</pubDate>
	<dc:creator><![CDATA[루오니의 집]]></dc:creator>
</item>
<item>
	<title><![CDATA[wxPython 멀티쓰레드 GUI 프로그래밍]]></title>
	<link>http://monetary.egloos.com/3754704</link>
	<guid>http://monetary.egloos.com/3754704</guid>
	<description>
	<![CDATA[ 
<img 
				src="http://thumb.egloos.net/100x76/http://pds24.egloos.com/pds/201110/23/56/a0005356_4ea2e15eb7cbc.jpg"  
				alt="wxPython 멀티쓰레드 GUI 프로그래밍" 
				width="100px"  
				height="76pxpx"
				align="left"
				style="border:1px solid #DDDDDD;margin:0 10px 10px 0px;"
				/> The main issue with multi-threaded GUI programming is the thread safty of the GUI itself. On most platforms the GUI is not thread safe and so any cross platform GUI Toolkit and applications written with it need to take that into account.  The solution is to only allow interaction with the GUI from a single thread, but this often severely limits what can be done in an application and makes it diffi	]]>
	</description>
	<pubDate>Sun, 23 Oct 2011 00:30:51 +0900</pubDate>
	<dc:creator><![CDATA[묵호칼치]]></dc:creator>
</item>
<item>
	<title><![CDATA[MFC create worker thread]]></title>
	<link>http://katalog.egloos.com/4636756</link>
	<guid>http://katalog.egloos.com/4636756</guid>
	<description>
	<![CDATA[ 
MFC create worker thread // 전역함수 선언 부분  UINT Ping(LPVOID pParam);         // 전역변수 선언 부분  CWinThread *pThread;    void CWinpingDlg::OnBnClickedOk()  {    char* szStr = &quot;test&quot;;        // Ping 스레드를 생성하여 전역변수 pThread에 넘겨준다.    // szStr 변수를 void 포인터로 넘겨준다.    ::pThread = AfxBeginThread( Ping, (LPVOID)szStr );   }    UINT Ping(LPVOID pParam)  {    // void 포인터형 pParam을 받아서 szStr 포인터에 넘겨준다.    char *szStr	]]>
	</description>
	<pubDate>Fri, 21 Oct 2011 15:11:41 +0900</pubDate>
	<dc:creator><![CDATA[루오니의 집]]></dc:creator>
</item>
<item>
	<title><![CDATA[[Linux] PS 명령어를 이용한 스레드 체크.]]></title>
	<link>http://failure.egloos.com/1951292</link>
	<guid>http://failure.egloos.com/1951292</guid>
	<description>
	<![CDATA[ 
PS 명령어를 이용한 스레드 체크.  ps -eLf | grep 이름 명령어를 사용하면 pid를 알 수 있고 /proc 디렉토리에 pid로 들어가서 task 하위에 있는 아이디로 디렉토리를 이동하면 status 라는 파일이 보임 거기에 실시간으로 쓰이게 되어있으며  실시간 모니터링하려면   while true; do cat status sleep 2 echo &quot;.&quot; done | tee ps_thread.log 	]]>
	</description>
	<pubDate>Wed, 21 Sep 2011 13:54:26 +0900</pubDate>
	<dc:creator><![CDATA[제르님의 (재미라곤 눈꼽만치도 찾아보기힘든) 이글루]]></dc:creator>
</item>
<item>
	<title><![CDATA[8. Thread(쓰레드)]]></title>
	<link>http://mrcowboy.egloos.com/868578</link>
	<guid>http://mrcowboy.egloos.com/868578</guid>
	<description>
	<![CDATA[ 
 사용자 쓰레드(user thread)는 일반적으로 프로그램에서 만들어지는 main 메소드와 같은 쓰레드를 말한다.    데몬 쓰레드(demon thread)는 입출력처리, 가비지 컬렉션, 사용자 쓰레드의 요청 등을 처리하기 위해 자바 가상머신에서 제공하는 쓰레드이며, 사용자 쓰레드가 존재하지 않으면 자동으로 종료된다.  쓰레드의 스케쥴링 방법은 플랫폼에 따라서 다른다.    1) java.lang.Thread 클래스를 상속받고 run() 메소드를 오버라이드  ex) ThreadA ta=new ThreadA; ta.start();  2) java.lang.Runnable 인터페이스를 구현하고 run() 메소드를 구현  RunnableB rb=new RunnableB(); Thread tb=new Thread	]]>
	</description>
	<pubDate>Mon, 19 Sep 2011 16:18:57 +0900</pubDate>
	<dc:creator><![CDATA[Micky's house]]></dc:creator>
</item>
<item>
	<title><![CDATA[크로스 스레드 작업]]></title>
	<link>http://minamjun11.egloos.com/786493</link>
	<guid>http://minamjun11.egloos.com/786493</guid>
	<description>
	<![CDATA[ 
<img 
				src="http://thumb.egloos.net/100x76/http://pds22.egloos.com/pds/201107/31/99/c0102099_4e3513b69f8f5.jpg"  
				alt="크로스 스레드 작업" 
				width="100px"  
				height="76pxpx"
				align="left"
				style="border:1px solid #DDDDDD;margin:0 10px 10px 0px;"
				/>       C#에서 교차 스레드 작업(Cross Thread)은 다른 스레드에서 컴포넌트를 호출하여 사용하는 것입니다..NET 프레임워크 2.0으로 넘어오면서 적절한 교차 스레드 작업은,더이상 옵션 수준에 머물지 않고, 프로그래밍 시 요구 사항으로 전환되었기에 매우 중요한 부분 중 하나입니다.  예를 들어,별도의 스레드를 현재 작업 중인 폼의 일부에서 호출을 하려고 하면, 오류 메세지가 뜹니다.  Cross-thread operation not valid: Control 'Form1' accessed from a thread other than the thread it was created on.-- 뭔 말이냐면, 날 만든 폼이 아닌 곳에선 동작하지 않을 거임.        Delegate  해결책으론 누구	]]>
	</description>
	<pubDate>Sun, 31 Jul 2011 17:28:03 +0900</pubDate>
	<dc:creator><![CDATA[신나는 세상 폼나게 살자]]></dc:creator>
</item>
<item>
	<title><![CDATA[자바 쓰레드(Thread) + 그래픽으로 흐르는 문자열 만들기]]></title>
	<link>http://wpkc.egloos.com/5004779</link>
	<guid>http://wpkc.egloos.com/5004779</guid>
	<description>
	<![CDATA[ 
<img 
				src="http://thumb.egloos.net/100x76/http://pds19.egloos.com/pds/201107/19/21/b0068521_4e255a889bc8a.jpg"  
				alt="자바 쓰레드(Thread) + 그래픽으로 흐르는 문.." 
				width="100px"  
				height="76pxpx"
				align="left"
				style="border:1px solid #DDDDDD;margin:0 10px 10px 0px;"
				/> import java.awt.Graphics ;  import java.awt.Color ;  import javax.swing.JFrame ;  import javax.swing.JLabel ;    class ThreadSwingForm extends JFrame implements Runnable {      JFrame frame = new JFrame() ;        int x, y ;        ThreadSwingForm() {          this.x = 0 ;          this.y = 150 ;            setSize(500, 300) ;          setLocation(150, 200) ;                    setVisible(true) ; 	]]>
	</description>
	<pubDate>Tue, 19 Jul 2011 19:23:58 +0900</pubDate>
	<dc:creator><![CDATA[케찹만땅]]></dc:creator>
</item>
<item>
	<title><![CDATA[상속과 인터페이스를 통한 `자바 쓰레드(Java Thread)` 사용]]></title>
	<link>http://wpkc.egloos.com/5004616</link>
	<guid>http://wpkc.egloos.com/5004616</guid>
	<description>
	<![CDATA[ 
<img 
				src="http://thumb.egloos.net/100x76/http://pds21.egloos.com/pds/201107/19/21/b0068521_4e24e4962d4d4.jpg"  
				alt="상속과 인터페이스를 통한 `자바 쓰레드(Java Th.." 
				width="100px"  
				height="76pxpx"
				align="left"
				style="border:1px solid #DDDDDD;margin:0 10px 10px 0px;"
				/> 자바에서 쓰레드는 extends로 상속을 받거나 Runnable 인터페이스를 implements로 상속 받아 사용하는 2가지 방법이 있다. 사용은 main()에서 생성자  및start() 메써드로 호출하고 해당 클래스에서 run() 메써드로 실행한다.  class CalcurateThread extends Thread {      public void run() {          int sum = 0 ;            for (int i = 1 ; i &amp;lt;= 1000 ; i++) {                          sum += i ;                          System.out.println(&quot;1부터 1,000까지의 합은  &quot; + sum + &quot;입니다.&quot;) ;    	]]>
	</description>
	<pubDate>Tue, 19 Jul 2011 11:01:54 +0900</pubDate>
	<dc:creator><![CDATA[케찹만땅]]></dc:creator>
</item>
<item>
	<title><![CDATA[비동기 I/O.... 싱글스레드가 빠를까? 멀티스레드가 빠를까?]]></title>
	<link>http://miruel.egloos.com/2801442</link>
	<guid>http://miruel.egloos.com/2801442</guid>
	<description>
	<![CDATA[ 
[비동기 I/O 네트워크 프로그래밍 소고] 답글로 쓰다보니 엄청 길어져서 트랙백합니다.  &quot;뭐 더 좋겠죠. 나보다 100배는 머리 좋은 사람들이, 훨씬 제가 짜는 프로그램들 보다 훨씬 하드한 프로그램이 돌아가는걸 전제로 해서 짠걸 테니까요....&quot;라고 말하고 치울까하다가, 한마디만 할까? 하다가 길어졌습니다.  1. 비동기 I/O성능에 대해서  Single thread가 Through put이 더 좋다.... 사실, 원칙적으로 I/O 성능은 Thread의 수와 상관없이 동일합니다.  CPU 내에 Thread가 1개던, 100개던 10,000개던 근본적으로 타겟 장치로의 I/O 포트는 한개 뿐.... 구멍이 한개인데 10개를 들이 밀어봐야 어짜피 나가는건 한개 뿐 입니다. 따라서, 여럿이 싸우는 것보다 Sin	]]>
	</description>
	<pubDate>Mon, 04 Jul 2011 15:46:57 +0900</pubDate>
	<dc:creator><![CDATA[미루엘의 여행]]></dc:creator>
</item>
<item>
	<title><![CDATA[Real-Time Games for Android]]></title>
	<link>http://YangRee.egloos.com/3671298</link>
	<guid>http://YangRee.egloos.com/3671298</guid>
	<description>
	<![CDATA[ 
	]]>
	</description>
	<pubDate>Tue, 14 Jun 2011 22:48:09 +0900</pubDate>
	<dc:creator><![CDATA[양리와 함께하는 행복한 세상]]></dc:creator>
</item>
<item>
	<title><![CDATA[[Java] Thread에 관하여...]]></title>
	<link>http://kiringun.egloos.com/391080</link>
	<guid>http://kiringun.egloos.com/391080</guid>
	<description>
	<![CDATA[ 
운영체제 수업에서 귀가 따갑도록 들은 용어지만, 막상 접하면 눈 앞이 깜깜해지는 용어 중 하나이다. thread는 프로세스(process)의 내부에서 프로세스에 할당된 자원(Memory)를 이용해서 실제로 작업을 수행한다. 여기서 프로세스란 '실행 중인 프로그램'을 뜻한다. 즉, thread는 현재 실행 중인 프로그램에 할당된 메모리를 이용하여 프로그램의 실제 동작을 하는 존재로 생각하면 될 것 같다. 비유를 들자면 thread는 프로세스라는 공장에서 일하는 일꾼과 같다는 것이다. 이러한 thread가 2개 이상이 되면 이것을 multi thread라고 한다. 현대의 대부분의 OS들은 멀티태스킹을 지원하기 때문에 여러 개의 프로세스가 동시에 실행될 수 있는 원리와 같다고 생각하면 쉬울 것 같다. OS의 개념	]]>
	</description>
	<pubDate>Tue, 12 Apr 2011 22:57:51 +0900</pubDate>
	<dc:creator><![CDATA[기린의 정신줄 잡기 !]]></dc:creator>
</item>
	</channel>
</rss>

