OberonCore https://forum.oberoncore.ru/ |
|
Как узнать, сколько времени выполняется процедура? https://forum.oberoncore.ru/viewtopic.php?f=35&t=6146 |
Страница 2 из 2 |
Автор: | Info21 [ Воскресенье, 29 Октябрь, 2017 11:22 ] |
Заголовок сообщения: | Re: Как узнать, сколько времени выполняется процедура? |
Иван Денисов писал(а): Александр К писал(а): Иван Денисов писал(а): Не связывайтесь с MSDN сейчас. Почему? Вся прелесть работы с фреймворком в том, что вы абстрагируетесь от API операционной системы, которая устроена весьма несовершенным образом. Везде, где вы можете не использовать WInApi, я бы порекомендовал его не использовать. Есть задачи, где без этого не обойтись, но смысла новичку копаться в MSDN не вижу. Опыт сорока лет однозначно подтверждает: изо всех сил минимизируйте привязки к внешним средам. Уж на что ББ стабилен и надёжен в этом отношении, но и тут -- последние выкрутасы Центра с модификацией ядра вызывают опасения. |
Автор: | Trurl [ Воскресенье, 29 Октябрь, 2017 12:06 ] |
Заголовок сообщения: | Re: Как узнать, сколько времени выполняется процедура? |
Иван Денисов писал(а): но смысла новичку копаться в MSDN не вижу. В данном случае новичок и не стал копаться, Написал сигнатуру наугад. А оно не совпало. Код: PROCEDURE QueryPerformanceCounter* (VAR [nil] lpPerformanceCount: LONGINT): BOOL;
|
Автор: | Александр К [ Понедельник, 30 Октябрь, 2017 15:48 ] |
Заголовок сообщения: | Re: Как узнать, сколько времени выполняется процедура? |
Trurl писал(а): Код: PROCEDURE QueryPerformanceCounter* (VAR [nil] lpPerformanceCount: LONGINT): BOOLEAN; Подскажите, зачем [nil] нужно? |
Автор: | Wlad [ Понедельник, 30 Октябрь, 2017 16:29 ] |
Заголовок сообщения: | Re: Как узнать, сколько времени выполняется процедура? |
Александр К писал(а): Trurl писал(а): Код: PROCEDURE QueryPerformanceCounter* (VAR [nil] lpPerformanceCount: LONGINT): BOOLEAN; Подскажите, зачем [nil] нужно? Windows написана (как нам говорят) на C. QueryPerformanceCounter принимает указатель. Указатель может быть равен NULL. |
Автор: | Александр К [ Понедельник, 30 Октябрь, 2017 17:01 ] |
Заголовок сообщения: | Re: Как узнать, сколько времени выполняется процедура? |
А если в этой функции VAR заменить на OUT, что-нибудь изменится? |
Автор: | Trurl [ Понедельник, 30 Октябрь, 2017 19:01 ] |
Заголовок сообщения: | Re: Как узнать, сколько времени выполняется процедура? |
Вообще, [nil] здесь не нужно. Но WinApi сгенерирован автоматически, там много такого. Заменить VAR на OUT можно. По сути ничего не изменится, но будет понятнее. |
Автор: | Александр К [ Понедельник, 30 Октябрь, 2017 19:53 ] |
Заголовок сообщения: | Re: Как узнать, сколько времени выполняется процедура? |
Всем спасибо большое за ответы. |
Автор: | Wlad [ Вторник, 31 Октябрь, 2017 19:21 ] |
Заголовок сообщения: | Re: Как узнать, сколько времени выполняется процедура? |
Александр К писал(а): А если в этой функции VAR заменить на OUT, что-нибудь изменится? Методически, если, по смыслу, аргумент "работает на возврат чего-то из функции", НУЖНО. Бережёного - Бог бережёт. Ну, и - документирование. Не зря же даже в таком угробище, как Си, программеры (кто по-умней) сами в комментах возле аргументов функций ставят "направление", в котором "работает" аргумент. |
Страница 2 из 2 | Часовой пояс: UTC + 3 часа |
Powered by phpBB® Forum Software © phpBB Group https://www.phpbb.com/ |