Форум: Форум C++Разное
Новые темы: 00
MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Разное

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: почему так ?
 
 автор: EXP   (02.02.2008 в 16:10)   письмо автору
 
 

1) Почему простая функция вроде sleep() из php
void Sleep(clock_t wait)
{
    clock_t goal;

    goal = wait + clock();
    while(goal > clock());
    
}
// когда вызываю например так
Sleep(10000);

все 10 секунд чуть не на 50% грузит процессор ?

2) Почему если делаю в папке .../cgi-bin/ простой CGI файл на СИ который считывает из файла ,
слегка меняет и выдаёт в браузер, он тоже заметно грузит процессор
и выполняется намного медленнее чем такие-же даже более делающие файлы на PHP или PERL ?

3) Почему когда компилирую DLL ( с помощью Dev-Cpp ) из исходных кодов
у меня получается намного больший размер файла чем у такой-же DLL ,
которая прилагалась уже готовая и виполняет всё точно так-же.
около в 7 раз больший размер , гдето 15000 байт против 2000?

Может это всё связано с тем что компилятор именно Dev-Cpp ?
иногда совсем не хочет компилировать какой-нибудь исходный код
который уже готовый нормально работает на виндовс.

там и нужен-то вроде был только один файл stddef.h ,
я в него заглянул , а там у меня
/*
 * This is just an RC_INVOKED guard for the real stddef.h
 * fixincluded in gcc system dir.  One day we will delete this file.
 */

#ifndef RC_INVOKED
#include_next<stddef.h>
#endif

что-бы это значило ?

  Ответить  
 
 автор: cheops   (02.02.2008 в 16:37)   письмо автору
 
   для: EXP   (02.02.2008 в 16:10)
 

1) Потому что для выполнения цикла требуется центральный процессор, системные функции процессор не используют - они передают управление следующим процессам.

  Ответить  
 
 автор: cheops   (02.02.2008 в 16:38)   письмо автору
 
   для: EXP   (02.02.2008 в 16:10)
 

2) CGI достотаточно ресурсоёмкая вещь, PHP выполняется внутри кода Apache, а CGI-выполняется как отдельное приложение, которое с apache вынуждено взаимодействовать.

  Ответить  
 
 автор: cheops   (02.02.2008 в 16:39)   письмо автору
 
   для: EXP   (02.02.2008 в 16:10)
 

3) Вероятно вы не выполняете оптимизацию проекта и в теле библиотеки остаётся не мало отладочного кода.

PS Под разные вопросы лучше заводить разные темы.

  Ответить  
 
 автор: EXP   (03.02.2008 в 03:39)   письмо автору
13 Кб
 
   для: cheops   (02.02.2008 в 16:39)
 

насчёт оптимизации не совсем понятно.

вот прикрепил исходный код и там готовая dll, это предлагалось как пример того как делать плагин к AkelPad.
делаю создать проект , добавляю туда файл.cpp и файл.h и компилирую.

только то dll что там уже есть весит 2 с чем-то а у меня под 15

  Ответить  
 
 автор: cheops   (03.02.2008 в 06:37)   письмо автору
 
   для: EXP   (03.02.2008 в 03:39)
 

Перейдите в меню Проект->Параметры проекта->Компилятор->В разделе Оптимизация везде выставляйте Yes

  Ответить  
 
 автор: EXP   (03.02.2008 в 10:04)   письмо автору
 
   для: cheops   (03.02.2008 в 06:37)
 

Спасибо .
заметно стало лучше :) хоть не совсем, но раза в три стал меньше файл .
интересно отличаются.ли размером файлы собранные на разных компиляторах ,
там похоже на MsSDK сделано.

  Ответить  
 
 автор: cheops   (04.02.2008 в 04:31)   письмо автору
 
   для: EXP   (03.02.2008 в 10:04)
 

>интересно отличаются.ли размером файлы собранные на разных компиляторах
Да, отличаются. Для Windows самого заметного снижения объёма можно достичь на Visual Studio.

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования