1 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
\r
4 <meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS">
\r
5 <meta http-equiv="Content-Style-Type" content="text/css">
\r
6 <meta name="keywords" content="Simple Directmedia Layer SDL2.0">
\r
7 <link rel="top" href="index.html" title="
\83z
\81[
\83\80">
\r
8 <link rel="parent" href="CategoryTimer.html" title="1
\82Â
\8fã">
\r
9 <title>SDL_GetPerformanceFrequency</title>
\r
12 <a href="index.html">
\96Ú
\8e\9f</a> - <a href="ApiByCategory.html">API(
\8b@
\94\
\95Ê)</a> - <a href="CategoryTimer.html">
\83^
\83C
\83}</a> - SDL_GetPerformanceFrequency
\r
14 <h1>SDL_GetPerformanceFrequency</h1>
\r
15 1
\95b
\82 \82½
\82è
\82Ì
\8d\82\95ª
\89ð
\94\
\83J
\83E
\83\93\83^
\82ð
\93¾
\82é
\r
17 <code>Uint64 SDL_GetPerformanceFrequency(void)</code>
\r
18 <h2>
\96ß
\82è
\92l</h2>
\r
19 \8aÂ
\8b«
\82É
\88Ë
\91¶
\82µ
\82½1
\95b
\82 \82½
\82è
\82Ì
\83J
\83E
\83\93\83g
\90\94\82ð
\93¾
\82é.
\r
20 <h2>
\83T
\83\93\83v
\83\8b\83R
\81[
\83h</h2>
\r
26 #define DEFAULT_RESOLUTION 1
\r
28 static int ticks = 0;
\r
30 static Uint32 SDLCALL
\r
31 ticktock(Uint32 interval, void *param)
\r
37 static Uint32 SDLCALL
\r
38 callback(Uint32 interval, void *param)
\r
40 SDL_Log("
\83^
\83C
\83} %d :
\83p
\83\89\83\81\81[
\83^ = %d", interval, (int) (uintptr_t) param);
\r
45 main(int argc, char *argv[])
\r
48 SDL_TimerID t1, t2, t3;
\r
49 Uint32 start32, now32;
\r
52 /*
\92Ê
\8fí
\82Ì
\83A
\83v
\83\8a\83P
\81[
\83V
\83\87\83\93\83\8d\83O
\82ð
\97L
\8cø
\82É
\82·
\82é */
\r
53 SDL_LogSetPriority(SDL_LOG_CATEGORY_APPLICATION, SDL_LOG_PRIORITY_INFO);
\r
55 if (SDL_Init(SDL_INIT_TIMER) < 0) {
\r
56 SDL_LogError(SDL_LOG_CATEGORY_APPLICATION, "SDL
\82ð
\8f\89\8aú
\89»
\82Å
\82«
\82È
\82©
\82Á
\82½: %s", SDL_GetError());
\r
60 /*
\83^
\83C
\83}
\82ð
\8aJ
\8en
\82·
\82é */
\r
63 desired = SDL_atoi(argv[1]);
\r
66 desired = DEFAULT_RESOLUTION;
\r
68 t1 = SDL_AddTimer(desired, ticktock, NULL);
\r
70 /* 10
\95b
\8aÔ
\91Ò
\82Â */
\r
71 SDL_Log("10
\95b
\8aÔ
\91Ò
\82Â");
\r
72 SDL_Delay(10 * 1000);
\r
74 /*
\83^
\83C
\83}
\82ð
\92â
\8e~
\82·
\82é */
\r
75 SDL_RemoveTimer(t1);
\r
77 /*
\8c\8b\89Ê
\82ð
\95\
\8e¦
\82·
\82é */
\r
79 SDL_Log("
\83^
\83C
\83}
\95ª
\89ð
\94\:
\97v
\8b\81 = %d ms,
\8eÀ
\8dÛ = %f ms",
\r
80 desired, (double) (10 * 1000) / ticks);
\r
83 /*
\95¡
\90\94\82Ì
\83^
\83C
\83}
\82Ì
\83e
\83X
\83g */
\r
84 SDL_Log("
\95¡
\90\94\82Ì
\83^
\83C
\83}
\82Ì
\83e
\83X
\83g...");
\r
85 t1 = SDL_AddTimer(100, callback, (void *) 1);
\r
87 SDL_LogError(SDL_LOG_CATEGORY_APPLICATION,"
\83^
\83C
\83}1
\82ð
\90¶
\90¬
\82Å
\82«
\82È
\82©
\82Á
\82½: %s", SDL_GetError());
\r
88 t2 = SDL_AddTimer(50, callback, (void *) 2);
\r
90 SDL_LogError(SDL_LOG_CATEGORY_APPLICATION,"
\83^
\83C
\83}2
\82ð
\90¶
\90¬
\82Å
\82«
\82È
\82©
\82Á
\82½: %s", SDL_GetError());
\r
91 t3 = SDL_AddTimer(233, callback, (void *) 3);
\r
93 SDL_LogError(SDL_LOG_CATEGORY_APPLICATION,"
\83^
\83C
\83}3
\82ð
\90¶
\90¬
\82Å
\82«
\82È
\82©
\82Á
\82½: %s", SDL_GetError());
\r
95 /* 10
\95b
\8aÔ
\91Ò
\82Â */
\r
96 SDL_Log("10
\95b
\8aÔ
\91Ò
\82Â");
\r
97 SDL_Delay(10 * 1000);
\r
99 SDL_Log("
\83^
\83C
\83}1
\82ð
\8dí
\8f\9c\82µ,
\82³
\82ç
\82É5
\95b
\8aÔ
\91Ò
\82Â");
\r
100 SDL_RemoveTimer(t1);
\r
102 SDL_Delay(5 * 1000);
\r
104 SDL_RemoveTimer(t2);
\r
105 SDL_RemoveTimer(t3);
\r
107 start = SDL_GetPerformanceCounter();
\r
108 for (i = 0; i < 1000000; ++i) {
\r
111 now = SDL_GetPerformanceCounter();
\r
112 SDL_Log("100
\96\9c\89ñ
\82Ìticktock
\8aÖ
\90\94\82Ì
\8cÄ
\82Ñ
\8fo
\82µ
\82É
\82Í %f ms
\82ð
\97v
\82µ
\82½", (double)((now - start)*1000) / SDL_GetPerformanceFrequency());
\r
114 SDL_Log("1
\95b
\82 \82½
\82è
\82Ì
\8d\82\95ª
\89ð
\94\
\83J
\83E
\83\93\83^: %"SDL_PRIu64"", (unsigned long long) SDL_GetPerformanceFrequency());
\r
115 start32 = SDL_GetTicks();
\r
116 start = SDL_GetPerformanceCounter();
\r
118 now = SDL_GetPerformanceCounter();
\r
119 now32 = SDL_GetTicks();
\r
120 SDL_Log("SDL_Delay(1000) = %d ms,
\8d\82\95ª
\89ð
\94\
\82Å
\82Í %f", (now32-start32), (double)((now - start)*1000) / SDL_GetPerformanceFrequency());
\r
128 <h2>
\83o
\81[
\83W
\83\87\83\93</h2>
\r
132 <h2>
\8aÖ
\98A
\8d\80\96Ú(
\8aÖ
\90\94)</h2>
\r
133 <a href="SDL_GetPerformanceCounter.html">SDL_GetPerformanceCounter</a><br>
\r
134 <h2>SDL Wiki
\82Ö
\82Ì
\83\8a\83\93\83N</h2>
\r
135 <a href="https://wiki.libsdl.org/SDL_GetPerformanceFrequency">SDL_GetPerformanceFrequency - SDL Wiki</a>
\r