Добро пожаловать на Pro Pawn - Портал о PAWN-скриптинге.
Страница 2 из 2 ПерваяПервая 1 2
Показано с 11 по 16 из 16
  1. #11
    Аватар для VVWVV
    ?

    Статус
    Оффлайн
    Регистрация
    09.07.2015
    Сообщений
    731
    Репутация:
    353 ±
    Цитата Сообщение от Anton Styazhkin Посмотреть сообщение
    Зачем пропускать инициализацию, если ты не получишь профита, но сделаешь код для других запутанней?

      Открыть/закрыть

    Код не будет запутанным, ибо между оператором и меткой всего лишь одна строка.

    Цитата Сообщение от vovandolg Посмотреть сообщение
    Я привык что у меня все такие проверки в команде или ещё где до работы этого кода, ну да ладно щас черканём..
    Вы можете забыть об этом.

    Цитата Сообщение от vovandolg Посмотреть сообщение
    Можно ссылочку где про кеширование почитать можно?)
    google.com

  2. #12
    Аватар для vovandolg
    Пользователь

    Статус
    Оффлайн
    Регистрация
    17.11.2015
    Адрес
    Stavropol
    Сообщений
    1,369
    Репутация:
    113 ±
    Цитата Сообщение от Anton Styazhkin Посмотреть сообщение
    VVWVV просто забыл кое что добавить. Бывает)
    И я не увидел
    _______________________
    Обновил шапку темы, всем благодати за подробный разбор)
    Последний раз редактировалось vovandolg; 29.07.2016 в 03:22.
    [Anticheat]___Invisible Fly Hack
    [Anticheat]____Weapon/Ammo Hack
    [Function]______ResetPlayerWeaponSlot
    [Function]_______FIX_SetPlayerAmmo
    [ServerMod]______TDM | Zombie Apokalypse

  3. #13
    Аватар для Daniel_Cortez
    "Это не хак, это фича"

    Статус
    Оффлайн
    Регистрация
    06.04.2013
    Адрес
    Novokuznetsk, Russia
    Сообщений
    2,192
    Репутация:
    2590 ±
    Цитата Сообщение от vovandolg Посмотреть сообщение
    Ещё не понял момента в отрывке кода....
    Зачем вызывать лишний раз оператора
    PHP код:
    if (== slot)
        continue;
    GetPlayerWeaponData(playeridiweapon[i], ammo[i]); 
    Когда можно просто вот так сделать
    PHP код:
    if (!= slot)
        
    GetPlayerWeaponData(playeridiweapon[i], ammo[i]); 
    Это одна из микрооптимизаций, правда не факт, что она вообще имеет смысл. Сказал бы, почему именно, но объяснение будет тянуть на целую статью по скриптингу (нужно долго вникать по поводу того, когда и какие инструкции jump/j** генерирует компилятор).
    Пока что ограничусь таким советом: если нужна производительность, лучше избегайте цикла for, для него компилятор почти во всех случаях ставит лишние инструкции перехода.
    Правда, всё равно от таких микрооптимизаций ощутимый прирост скорости будет заметен только в синтетических тестах с циклами на миллионы итераций.
    Индивидуально в ЛС по скриптингу не помогаю. Задавайте все свои вопросы здесь (click).

  4. #14
    Аватар для $continue$
    Пользователь

    Статус
    Оффлайн
    Регистрация
    02.08.2014
    Адрес
    г. Киров (aka Вятка)
    Сообщений
    1,487
    Репутация:
    276 ±
    Лучше пожертвовать пару мс (машины на которых будет запускаться этот код - довольна таки быстрые), чем потерять "удобный" и простой синтаксис for.

    P.S: Ты о этих самых переходах?
      Открыть/закрыть





    Цитата Сообщение от Daniel_Cortez Посмотреть сообщение
    лучше избегайте цикла for
    Value your freedom or you will lose it, teaches history. "Don't bother us with politics," respond those who don't want to learn. (c) Richard Stallman

  5. #15
    Аватар для DeimoS
    Модератор?

    Статус
    Оффлайн
    Регистрация
    27.01.2014
    Адрес
    Восточный Мордор
    Сообщений
    5,588
    Репутация:
    1984 ±
    Цитата Сообщение от $continue$ Посмотреть сообщение
    Лучше пожертвовать пару мс (машины на которых будет запускаться этот код - довольна таки быстрые), чем потерять "удобный" и простой синтаксис for.
    Речь, как я понимаю, шла о ситуациях, когда микрооптимизация очень нужна и важна. В Pawn такие ситуации будут, когда кто-то вдруг решит написать очередной "сверхбыстрый *название_системы*!!!1111!!!". Ну и в часто вызываемых колллбэках можно её учесть.
    Г - гибкость
    Связаться со мной в VK можно через личные сообщения этой группы
    Заказы не принимаю

    Широко известно, что идеи стоят 0.8333 цента каждая (исходя из рыночной цены 10 центов за дюжину).
    Великих идей полно, на них нет спроса.
    Воплощение идеи в законченную игру требует долгой работы,
    таланта, терпения и креативности, не говоря уж о затратах денег, времени и ресурсов.
    Предложить идею просто, воплотить – вот в чём проблема

    Steve Pavlina

  6. #16
    Аватар для Daniel_Cortez
    "Это не хак, это фича"

    Статус
    Оффлайн
    Регистрация
    06.04.2013
    Адрес
    Novokuznetsk, Russia
    Сообщений
    2,192
    Репутация:
    2590 ±
    Цитата Сообщение от $continue$ Посмотреть сообщение
    Лучше пожертвовать пару мс (машины на которых будет запускаться этот код - довольна таки быстрые), чем потерять "удобный" и простой синтаксис for.
    Шире нужно мыслить. Как уже сказал оратор выше, есть ситуации, в которых пригодится любая микрооптимизация. Например, я ими пользуюсь, когда пишу инклуды с перехватами функций - никогда не знаешь, как будут использовать перехваченные функции, поэтому лучше лишний раз перестраховаться, сделав так, чтобы перехватчик создавал как можно меньше дополнительной нагрузки.


    Цитата Сообщение от $continue$ Посмотреть сообщение
    P.S: Ты о этих самых переходах?
      Открыть/закрыть




    Почти, только вместо x86 набор инструкций AMX, а изменить направление цикла или трансформировать его в while/do-while можно только вручную из-за примитивности компилятора.
    Индивидуально в ЛС по скриптингу не помогаю. Задавайте все свои вопросы здесь (click).

 

 
Страница 2 из 2 ПерваяПервая 1 2

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •