디시인사이드 갤러리

갤러리 이슈박스, 최근방문 갤러리

갤러리 본문 영역

자바가 CPP보다 훨씬 빠름

헤헤(221.160) 2013.02.02 06:57:14
조회 435 추천 0 댓글 14







그려지는 속도가 자바가 훨씬 빠른게 눈으로 보임

어제꺼는 자바가 너무 빨라서 천천히 그려지는것처럼 보인거같음

근데 왜 자바가 더 빠르지 헤헤




------------------------------MFC 코드 ----------------------------------------------------------


void CChildView::OnPaint() 
{
        CPaintDC dc(this); // 그리기를 위한 디바이스 컨텍스트입니다.
        
        unsigned int count=0;
        CTime start=CTime::GetCurrentTime();
        for(int i=0;i<1000;i++){
                for(int j=0;j<1000;j++){
                                CBrush NewBrush(RGB(rand()%255,rand()%255,rand()%255));
                                dc.FillRect(CRect(i,j,i+50,j+50),&NewBrush);
                                count++;
                }
        }
        CTime end=CTime::GetCurrentTime();

        CTimeSpan t=end-start;
        CString str=_T("");
        str.Format(_T("%d초 소요, 그린 횟수 : %d"),t.GetSeconds(),count);
        MessageBox(str);
}



----------------------자바 코드-------------------------------------------

package view;

import java.awt.Color;
import java.awt.Graphics;
import java.util.Random;

import javax.swing.JFrame;
import javax.swing.JOptionPane;

public class SpeedView extends JFrame{
        boolean b=false;
        Random r=new Random();
        
        public SpeedView(){
                super("SpeedTest");
                setBounds(0,0,1000,1000);
                setVisible(true);
                setDefaultCloseOperation(DISPOSE_ON_CLOSE);
        }
        
        @Override
        public void paint(Graphics g) {
                super.paint(g);

                int c=0;
                int y=0;
                
                long start=System.currentTimeMillis();
                for(int i=0;i<1000;i++){
                        for(int j=0;j<1000;j++){
                                        g.setColor(new Color(r.nextInt(255),r.nextInt(255),r.nextInt(255)));
                                        g.fillRect(i, j, 50, 50);
                                        
                                        c++;
                        }
                }
                long end=System.currentTimeMillis();
                String msg=(end - start)/1000 + "초 소요, 그린 횟수 : "+c;
                
                if(b==false){
                        b=true;
                        JOptionPane.showMessageDialog(this, msg);
                }
                
        }
        
        public static void main(String[] args) {
                new SpeedView();
        }
}



--------------------------WinAPI---------------------------------------------------------


#include <windows.h>
#include <time.h>

LRESULT CALLBACK WndProc(HWND,UINT,WPARAM,LPARAM);
HINSTANCE g_hInst;
HWND hWndMain;
LPCTSTR lpszClass=TEXT("Class");

int APIENTRY WinMain(HINSTANCE hInstance,HINSTANCE hPrevInstance
          ,LPSTR lpszCmdParam,int nCmdShow)
{
        HWND hWnd;
        MSG Message;
        WNDCLASS WndClass;
        g_hInst=hInstance;

        WndClass.cbClsExtra=0;
        WndClass.cbWndExtra=0;
        WndClass.hbrBackground=(HBRUSH)(COLOR_WINDOW+1);
        WndClass.hCursor=LoadCursor(NULL,IDC_ARROW);
        WndClass.hIcon=LoadIcon(NULL,IDI_APPLICATION);
        WndClass.hInstance=hInstance;
        WndClass.lpfnWndProc=WndProc;
        WndClass.lpszClassName=lpszClass;
        WndClass.lpszMenuName=NULL;
        WndClass.style=CS_HREDRAW | CS_VREDRAW;
        RegisterClass(&WndClass);

        hWnd=CreateWindow(lpszClass,lpszClass,WS_OVERLAPPEDWINDOW,
                CW_USEDEFAULT,CW_USEDEFAULT,CW_USEDEFAULT,CW_USEDEFAULT,
                NULL,(HMENU)NULL,hInstance,NULL);
        ShowWindow(hWnd,nCmdShow);

        while (GetMessage(&Message,NULL,0,0)) {
                TranslateMessage(&Message);
                DispatchMessage(&Message);
        }
        return (int)Message.wParam;
}

LRESULT CALLBACK WndProc(HWND hWnd,UINT iMessage,WPARAM wParam,LPARAM lParam)
{
        HDC hdc;
        PAINTSTRUCT ps;
        int passtime;
        TCHAR msg[128];
        LARGE_INTEGER start, end, count;
        static HBRUSH hBrush,oldBrush;
        static RECT rt;
        int cnt=0;

        switch (iMessage) {
        case WM_CREATE:
                hWndMain=hWnd;
                SetWindowPos(hWnd,NULL,0,0,1000,1000,SWP_NOZORDER);
                srand( (unsigned int)(time(NULL)) );
                
                
                return 0;
        case WM_PAINT:
                hdc=BeginPaint(hWnd, &ps);
        
                QueryPerformanceFrequency(&count);
                QueryPerformanceCounter(&start);
                
                for(int i=0;i<1000;i++){
                        for(int j=0;j<1000;j++){
                                hBrush=CreateSolidBrush(RGB(rand()%255,rand()%255,rand()%255));
                                oldBrush=(HBRUSH)SelectObject(hdc,hBrush);
                                rt.left=i;
                                rt.top=j;
                                rt.right=i+50;
                                rt.bottom=j+50;
                                FillRect(hdc,&rt,hBrush);
                                DeleteObject(SelectObject(hdc,oldBrush));
                                cnt++;
                        }
                }
                
                QueryPerformanceCounter(&end);
                passtime = (end.QuadPart - start.QuadPart)  / count.QuadPart ;
                
                wsprintf(msg ,TEXT("%d초 소요, 그린 횟수 : %d"), passtime, cnt);
                MessageBox(hWnd,msg,TEXT("WinAPI"),MB_OK);

                EndPaint(hWnd, &ps);
                return 0;
        case WM_DESTROY:
                PostQuitMessage(0);
                return 0;
        }
        return(DefWindowProc(hWnd,iMessage,wParam,lParam));
}

추천 비추천

0

고정닉 0

0

댓글 영역

전체 댓글 0
본문 보기

하단 갤러리 리스트 영역

왼쪽 컨텐츠 영역

갤러리 리스트 영역

갤러리 리스트
번호 제목 글쓴이 작성일 조회 추천
설문 이번주 설문은 탈모 걱정 없어 보이는 머리숱 금수저 스타는? 운영자 25/07/14 - -
AD 휴대폰 액세서리 SALE 운영자 25/07/15 - -
345047 청마린 소희빠아님? 로레알갤로그로 이동합니다. 13.02.05 31 0
345041 윈7 쓰는데 내문서 지워졋다는데 어찌 복구하냐 .. [4] 천국거지갤로그로 이동합니다. 13.02.05 95 0
345039 학원보단 스터디그룹을 추천 [3] ㅎㅎㅎ(203.226) 13.02.05 161 0
345038 학원 수강권 싸게 양도해요(과목변경가능) [4] 데스(211.234) 13.02.05 148 0
345036 밤샜다 [3] 에어로홍갤로그로 이동합니다. 13.02.05 85 0
345035 형들 나뉴비인데 질문하나만 할게ㅠ [3] ■x(175.202) 13.02.05 77 0
345034 어서 어셈? [2] 일광면(121.177) 13.02.05 92 0
345033 아듀이노, 흑백 텍스트 LCD, 선디코더 칩 같은거 살려면 어디가야됨? [3] 우엠다(192.81) 13.02.05 77 0
345031 야. 부탁있다. [2] ssonacy갤로그로 이동합니다. 13.02.05 69 0
345029 win32api richedit으로 메모장만들면 단축키 메뉴로 실행어케해 [4] 이힝(175.215) 13.02.05 62 0
345028 프갤도 있네요. 저는 어셈개발자. 요즘 C를 공부할까 고민중입니다^^ [22] 어셈러브(61.38) 13.02.05 328 0
345025 친구 없는게 성격파탄자냐... ㅋㄱ(183.96) 13.02.05 120 0
345024 디- 는 가끔식 일베에 글 싸지르더라 [2] 일광면(121.177) 13.02.05 113 0
345021 순수한 프겔횽들을 위해 만나서는 안되는 이성을 나열해볼께 [5] 멍청닭(182.211) 13.02.05 183 3
345020 연봉 4000넘는 사람 손들어 봐라. [12] 물속의다이아갤로그로 이동합니다. 13.02.05 429 0
345019 최고의 매출과 명예와 존경을 받을수 있는 직업이 있다. [1] 멍청닭(182.211) 13.02.05 81 0
345018 국가 공인 자격증 신청 기간인데 어딴 자격증을 딸까?? [2] 멍청닭(182.211) 13.02.05 103 0
345017 블로그, 사이트 디자인 100선 [2] 루비•‿•갤로그로 이동합니다. 13.02.05 172 0
345015 가만히 보면 백왕은 [2] ㅇㄷㄴ(61.74) 13.02.05 98 0
345014 낄낄낄...참고 있던 게이본능이 나왔구나! [2] 낄낄(223.32) 13.02.05 64 0
345013 IT창업하고 싶은 비전공자들의 마인드 [4] de(183.103) 13.02.05 389 1
345012 레츠플라이ㅇ하이별나라갈래 [3] 루비•‿•갤로그로 이동합니다. 13.02.05 70 0
345011 프갤꼬라지가 이게뭐냐 다들 이러지마라 [1] PO스크롤WER갤로그로 이동합니다. 13.02.05 50 0
345010 이야 백왕 4천 버냐? ㅇㅅ(61.74) 13.02.05 47 0
345009 백왕횽은 좀... 땡칠도사갤로그로 이동합니다. 13.02.05 60 0
345007 프갤의 불쌍한 풍경 스케치 [4] 에어로홍갤로그로 이동합니다. 13.02.05 116 1
345006 백왕 29살 연봉 세전 4천 174에 90키로 모태솔로 [4] ㅇㅇ(175.223) 13.02.05 245 0
345003 이제야 좀 프겔 스럽구나. [3] 물속의다이아갤로그로 이동합니다. 13.02.05 85 0
345002 그만하세요 여긴 프로그래밍갤러리입니다. PO스크롤WER갤로그로 이동합니다. 13.02.05 61 0
345001 디는 다시 다시 봄.니.다. [3] 물속의다이아갤로그로 이동합니다. 13.02.05 80 0
345000 우리도 지금 사람 구하는데... 물속의다이아갤로그로 이동합니다. 13.02.05 64 0
344999 디는 다시 봄.니.다. [4] 물속의다이아갤로그로 이동합니다. 13.02.05 97 0
344998 중딩1 먹이ㄴㄴ 어그로ㄴㄴ [1] c(175.208) 13.02.05 79 0
344996 디는 봄.니.다. [1] 물속의다이아갤로그로 이동합니다. 13.02.05 64 0
344995 난 디가 다시 온 줄 알았는데... 물속의다이아갤로그로 이동합니다. 13.02.05 58 0
344994 프갤 열등감 종자들아 열등감 좀 그만 표출해라 내가 다 얼굴이 화끈거린다 [13] (59.9) 13.02.05 185 0
344993 내 주변에서 사업한다는 종자들한테 가장 많이 듣는 얘기 [2] 물속의다이아갤로그로 이동합니다. 13.02.05 98 0
344992 프갤 가만히 보면 열등감,피해의식 진짜 엄청남.... [3] (59.9) 13.02.05 101 0
344991 내가 아이디어는 개쩌는데.jpg [2] appllee갤로그로 이동합니다. 13.02.05 140 0
344989 사업을 운영하는 사장의 태도 [14] 물속의다이아갤로그로 이동합니다. 13.02.05 192 0
344988 배열함수? 라는것도 있냐 [4] 낄낄(223.32) 13.02.05 75 0
344987 어떤 분야던 만만하게 보지 마라. [18] 물속의다이아갤로그로 이동합니다. 13.02.05 250 0
344986 cpu 점유율 문제... [5] ㅁㄴㅇ(58.229) 13.02.05 78 0
344985 개발자 구하고 싶은데 월급은 얼마나 줘야합니까? [20] (110.70) 13.02.05 338 0
344983 C언어 다음에 뭐배우심?? [1] 형들(121.164) 13.02.05 88 0
344982 별 이상한 곳들 많은듯.. [1] topandbottom갤로그로 이동합니다. 13.02.05 90 0
344981 키보드워리어들은 key 나오는 뮤직비디오를 봅니다 [2] 에어로홍갤로그로 이동합니다. 13.02.05 98 0
344980 국내연예인 게시판에 ,12 쓰면 에러나면서 입력 안된다 [1] 에어로홍갤로그로 이동합니다. 13.02.05 51 0
344978 근데 디씨는 웹개발자 안뽑나 [6] 땡칠도사갤로그로 이동합니다. 13.02.05 198 0
344976 눈부시게 아름답다 에어로홍갤로그로 이동합니다. 13.02.05 69 0
뉴스 아름다운 미소의 배우 강서하, 유작 남기고 위암 투병 끝 사망, 향년 31세 “믿기지 않는다” 디시트렌드 07.15
갤러리 내부 검색
제목+내용게시물 정렬 옵션

오른쪽 컨텐츠 영역

실시간 베스트

1/8

뉴스

디시미디어

디시이슈

1/2