![]() |
|
|
Google unix.com
|
|||||||
| Форумы | Регистрация | Правила форума | Ссылки | Альбомы | ЧАВО | Список участников | Календарь | Поиск | Сегодняшние сообщения | Отметить форумы читать |
| Программирования высокого уровня Почтовые вопросы о C, C + +, Java, SQL и других языках программирования здесь. |
Подробнее UNIX и Linux Темы форума можно найти полезные
|
||||
| Нить | Резьба для начинающих | Форум | Ответы | Последнее сообщение |
| Как напечатать крупным и наименьшее число. | amp10388 | UNIX для чайников Вопросы И Ответы | 2 | 05-07-2008 11:28 AM |
| Проверка маленькая и большое количество | subin_bala | Shell программирование и сценарии | 4 | 04-24-2008 08:32 AM |
| Разрешения имен DNS | e250user | SUN Solaris | 1 | 07-25-2006 12:13 PM |
| TCP / IP Название резолюции | progressdll | UNIX перспективных И опытных пользователей | 2 | 05-07-2002 12:33 PM |
| Резолюция ..?? | Linux_fan | UNIX Desktop для чайников Вопросы И Ответы | 3 | 03-06-2002 11:33 AM |
![]() |
|
|
LinkBack | Резьба Инструменты | Искать в этом Thread | Оценить Thread | Режимы дисплея |
|
|
|
||||
|
маленький резолюции с использованием gettimeofday () в C
Привет ...
Может ли кто-нибудь поможет мне, как маленький часы резолюции на них система может быть получено в C помощью gettimeofday (). Thankz заранее ... |
|
||||
|
Самый маленький резолюции gettimeofday будет микросекунд соответствии с manpage.
|
|
||||
|
gettimeofday даст вам текущую дату и время, указанные в секундах или микросекунд от UNIX эпохи, но не разрешение общесистемном часы так конкретно, как к тому, что вы хотите?
|
|
||||
|
Получите часы resolutoin
/*
* Печать gettimeofday () часы резолюцию по этой машине. * * Код взят из Iozone. Файловая Iozone контрольный показатель * Автор: Дон Capps * * / # включить <sys/time.h> # включить <stdio.h> # включить <stdlib.h> # включить <sys/types.h> # определить THISVERSION "Версия $ Редакция: 1.2 $" двойной time_res, задержка; недействительным get_resolution (); / * Работа с большинством компиляторов * / статический двойной time_so_far1 (); / * Работа с большинством компиляторов * / / * * Мера и распечатать gettimeofday () резолюции. * / Main () ( printf ( "\ N \ nMeasuring в gettimeofday () резолюции \ N \ N"); get_resolution (); printf ( "Время резолюции gettimeofday () \u003d% F секунд \ N", time_res); printf ( "Время резолюции gettimeofday () \u003d% F Милли секунд \ N", time_res * 1000); printf ( "Время резолюции gettimeofday () \u003d% F микро секунд \ N \ N", time_res * (1000 * 1000)); printf ( "при условии, любезно Iozone. http://www.iozone.org \ N \ N"); ) / * * Отменен код Iozone. * / # ifdef HAVE_ANSIC_C недействительным get_resolution (вакуума) # другое недействительным get_resolution () # ENDIF ( двойной StartTime, finishtime; долго J; еще раз: finishtime \u003d time_so_far1 (); / * разминки инструкцию кэша * / StartTime \u003d time_so_far1 (); / * разминки инструкцию кэша * / задержка \u003d J \u003d 0; / * разминки данных кэша * / в то время как (1) ( StartTime \u003d time_so_far1 (); для (J \u003d 0; J <задержка; J + +) ; finishtime \u003d time_so_far1 (); если (StartTime \u003d\u003d finishtime) задержка + +; еще брейк; ) time_res \u003d (finishtime-StartTime) / 1000000,0; ) / * * Отменен код Iozone. * / /************************************************* ***********************/ / * Время измерений подпрограмм. * / / * Возврат в микросекунд * / /************************************************* ***********************/ # ifdef HAVE_ANSIC_C статический двойной time_so_far1 (вакуума) # другое статический двойной time_so_far1 () # ENDIF ( / * Для Windows в time_of_day () бесполезно. Он приращениями в 55 милли второго * / / * Приращениями. Используя Win32api можно получить доступ к высокопроизводительным * / / * Измерение интерфейсов. При этом можно получить обратно в 8-9 * / / * Микросекундной резолюции. * / # ifdef Windows LARGE_INTEGER частота, борьба; двойной wintime; двойной bigcounter; QueryPerformanceFrequency (И частота); QueryPerformanceCounter (И счетчик); bigcounter \u003d (двухместный) counter.HighPart * (двухместный) 0xffffffff + (двухместный) counter.LowPart; wintime \u003d (двухместный) (bigcounter / (двухместный) freq.LowPart); возвращение ((двухместный) wintime * 1000000,0); # другое # Если определено (OSFV4) | | определена (OSFV3) | | определена (OSFV5) структуры timespec GP; если (getclock (TIMEOFDAY, (структуру timespec *) И GP) \u003d\u003d -1) perror ( "getclock"); вернуть (((двухместный) (gp.tv_sec) 1000000,0 *) + (((Флоат) (gp.tv_nsec)) * 0,001)); # другое структуры timeval ТП; если (gettimeofday (И Т.П., (структуры часовой *) NULL) \u003d\u003d -1) perror ( "gettimeofday"); возвращение ((двухместный) (tp.tv_sec) 1000000,0 *) + (((двухместный) tp.tv_usec)); # ENDIF # ENDIF ) |
![]() |
| Закладки |
| Резьба Инструменты | Искать в этом Thread |
| Режимы дисплея | Оценить эту ветку |
|
|