Mich@elson
Умник
Приветствую. Взяли мод один под основу. Начали по чуть-чуть уменьшать размер стэка в моде.
При компилировании, размер стэка составляет:
Получается, мод у нас затрачивает 9276 cells (37104 bytes) памяти из Стека во время работы, что превышает максимальный объём стэка: 16384 bytes
Столкнулись с такими пабликами как: publics: OnPlayerUpdateAc(playerid) & publics: OnPlayerRegister(playerid)
Вот сами паблики:
В паблике - publics: OnPlayerUpdateAc(playerid)
У переменной - query, размер 4500.
И в паблике - publics: OnPlayerRegister(playerid)
У переменной - query, размер 3000.
Из-за этих: new query[4500]; | new query[3000]; - большая нагрузка.
Вопрос заключается в том, как оптимизировать эти паблики? Не создавая этих больших размеров у переменной. Эти размеры слишком влияют на память в stack.
---------- Post added at 02:38 ---------- Previous post was at 02:32 ----------
#pragma dynamic 100500 - не советовать.
При компилировании, размер стэка составляет:
PHP:
Stack/heap size: 16384 bytes; estimated max. usage=9276 cells (37104 bytes)
Столкнулись с такими пабликами как: publics: OnPlayerUpdateAc(playerid) & publics: OnPlayerRegister(playerid)
Вот сами паблики:
PHP:
publics: OnPlayerUpdateAc(playerid)
{
new query[4500];
new string[228];
if(IsPlayerConnected(playerid))
{
if(PlayerInfo[playerid][pLogin] == 1)
{
query = "UPDATE `accounts` SET ";
acc_int_strcat(query, sizeof(query), "pLevel", PlayerInfo[playerid][pLevel]);
acc_int_strcat(query, sizeof(query), "pPhousekey", PlayerInfo[playerid][pPhousekey]);
acc_int_strcat(query, sizeof(query), "pPbiskey", PlayerInfo[playerid][pPbiskey]);
acc_int_strcat(query, sizeof(query), "pAdmin", PlayerInfo[playerid][pAdmin]);
acc_int_strcat(query, sizeof(query), "pForma", PlayerInfo[playerid][pForma]);
acc_int_strcat(query, sizeof(query), "pJobHealLeader", PlayerInfo[playerid][pJobHealLeader]);
acc_int_strcat(query, sizeof(query), "pJobHeal", PlayerInfo[playerid][pJobHeal]);
acc_float_strcat(query, sizeof(query), "pFuelcar", PlayerInfo[playerid][pFuelcar]);
acc_int_strcat(query, sizeof(query), "pText", PlayerInfo[playerid][pText]);
acc_int_strcat(query, sizeof(query), "pCheckip", PlayerInfo[playerid][pCheckip]);
acc_int_strcat(query, sizeof(query), "pPhoneBook", PlayerInfo[playerid][pPhoneBook]);
acc_int_strcat(query, sizeof(query), "pDirectory", PlayerInfo[playerid][pDirectory]);
acc_int_strcat(query, sizeof(query), "pCar", PlayerInfo[playerid][pCar]);
acc_int_strcat(query, sizeof(query), "pDonateRank", PlayerInfo[playerid][pDonateRank]);
acc_int_strcat(query, sizeof(query), "pReg", PlayerInfo[playerid][pReg]);
acc_int_strcat(query, sizeof(query), "pSex", PlayerInfo[playerid][pSex]);
acc_int_strcat(query, sizeof(query), "pArrested", PlayerInfo[playerid][pArrested]);
acc_int_strcat(query, sizeof(query), "pMuted", PlayerInfo[playerid][pMuted]);
acc_int_strcat(query, sizeof(query), "pCrimes", PlayerInfo[playerid][pCrimes]);
acc_int_strcat(query, sizeof(query), "pExp", PlayerInfo[playerid][pExp]);
acc_int_strcat(query, sizeof(query), "pCash", PlayerInfo[playerid][pCash]);
acc_int_strcat(query, sizeof(query), "pKills", PlayerInfo[playerid][pKills]);
acc_int_strcat(query, sizeof(query), "pDeaths", PlayerInfo[playerid][pDeaths]);
acc_int_strcat(query, sizeof(query), "pPayCheck", PlayerInfo[playerid][pPayCheck]);
acc_int_strcat(query, sizeof(query), "pJailed", PlayerInfo[playerid][pJailed]);
acc_int_strcat(query, sizeof(query), "pCheat", PlayerInfo[playerid][pCheat]);
acc_int_strcat(query, sizeof(query), "pJailTime", PlayerInfo[playerid][pJailTime]);
acc_int_strcat(query, sizeof(query), "pMats", PlayerInfo[playerid][pMats]);
acc_int_strcat(query, sizeof(query), "pDrugs", PlayerInfo[playerid][pDrugs]);
acc_int_strcat(query, sizeof(query), "pLeader", PlayerInfo[playerid][pLeader]);
acc_int_strcat(query, sizeof(query), "pMember", PlayerInfo[playerid][pMember]);
acc_int_strcat(query, sizeof(query), "pRank", PlayerInfo[playerid][pRank]);
acc_int_strcat(query, sizeof(query), "pJob", PlayerInfo[playerid][pJob]);
acc_int_strcat(query, sizeof(query), "pCarLic", PlayerInfo[playerid][pCarLic]);
acc_int_strcat(query, sizeof(query), "pBizLic", PlayerInfo[playerid][pBizLic]);
acc_int_strcat(query, sizeof(query), "pFlyLic", PlayerInfo[playerid][pFlyLic]);
acc_int_strcat(query, sizeof(query), "pBoatLic", PlayerInfo[playerid][pBoatLic]);
acc_int_strcat(query, sizeof(query), "pFishLic", PlayerInfo[playerid][pFishLic]);
acc_int_strcat(query, sizeof(query), "pGunLic", PlayerInfo[playerid][pGunLic]);
acc_int_strcat(query, sizeof(query), "pSlot1", PlayerInfo[playerid][pSlot1]);
acc_int_strcat(query, sizeof(query), "pSlot2", PlayerInfo[playerid][pSlot2]);
acc_int_strcat(query, sizeof(query), "pSlot3", PlayerInfo[playerid][pSlot3]);
acc_int_strcat(query, sizeof(query), "pSlot4", PlayerInfo[playerid][pSlot4]);
acc_int_strcat(query, sizeof(query), "pSlot5", PlayerInfo[playerid][pSlot5]);
acc_int_strcat(query, sizeof(query), "pSlot6", PlayerInfo[playerid][pSlot6]);
acc_int_strcat(query, sizeof(query), "pSlot7", PlayerInfo[playerid][pSlot7]);
acc_int_strcat(query, sizeof(query), "pSlot8", PlayerInfo[playerid][pSlot8]);
acc_int_strcat(query, sizeof(query), "pSlot9", PlayerInfo[playerid][pSlot9]);
acc_int_strcat(query, sizeof(query), "pSlot10", PlayerInfo[playerid][pSlot10]);
acc_int_strcat(query, sizeof(query), "pSlot11", PlayerInfo[playerid][pSlot11]);
acc_int_strcat(query, sizeof(query), "pSlotammo1", PlayerInfo[playerid][pSlotammo1]);
acc_int_strcat(query, sizeof(query), "pSlotammo2", PlayerInfo[playerid][pSlotammo2]);
acc_int_strcat(query, sizeof(query), "pSlotammo3", PlayerInfo[playerid][pSlotammo3]);
acc_int_strcat(query, sizeof(query), "pSlotammo4", PlayerInfo[playerid][pSlotammo4]);
acc_int_strcat(query, sizeof(query), "pSlotammo5", PlayerInfo[playerid][pSlotammo5]);
acc_int_strcat(query, sizeof(query), "pSlotammo6", PlayerInfo[playerid][pSlotammo6]);
acc_int_strcat(query, sizeof(query), "pSlotammo7", PlayerInfo[playerid][pSlotammo7]);
acc_int_strcat(query, sizeof(query), "pSlotammo8", PlayerInfo[playerid][pSlotammo8]);
acc_int_strcat(query, sizeof(query), "pSlotammo9", PlayerInfo[playerid][pSlotammo9]);
acc_int_strcat(query, sizeof(query), "pSlotammo10", PlayerInfo[playerid][pSlotammo10]);
acc_int_strcat(query, sizeof(query), "pSlotammo11", PlayerInfo[playerid][pSlotammo11]);
acc_int_strcat(query, sizeof(query), "pGunSkill1", PlayerInfo[playerid][pGunSkill][0]);
acc_int_strcat(query, sizeof(query), "pGunSkill2", PlayerInfo[playerid][pGunSkill][1]);
acc_int_strcat(query, sizeof(query), "pGunSkill3", PlayerInfo[playerid][pGunSkill][2]);
acc_int_strcat(query, sizeof(query), "pGunSkill4", PlayerInfo[playerid][pGunSkill][3]);
acc_int_strcat(query, sizeof(query), "pGunSkill5", PlayerInfo[playerid][pGunSkill][4]);
acc_int_strcat(query, sizeof(query), "pGunSkill6", PlayerInfo[playerid][pGunSkill][5]);
acc_int_strcat(query, sizeof(query), "ptaxiexp", PlayerInfo[playerid][ptaxiexp]);
acc_int_strcat(query, sizeof(query), "ptaxilvl", PlayerInfo[playerid][ptaxilvl]);
acc_int_strcat(query, sizeof(query), "pDLevel", PlayerInfo[playerid][pDLevel]);
acc_int_strcat(query, sizeof(query), "pDExp", PlayerInfo[playerid][pDExp]);
acc_int_strcat(query, sizeof(query), "pDMgruz", PlayerInfo[playerid][pDMgruz]);
acc_int_strcat(query, sizeof(query), "pDgruz", PlayerInfo[playerid][pDgruz]);
acc_int_strcat(query, sizeof(query), "pKazpay", PlayerInfo[playerid][pKazpay]);
acc_int_strcat(query, sizeof(query), "pChar", PlayerInfo[playerid][pChar][0]);
acc_int_strcat(query, sizeof(query), "pChar1", PlayerInfo[playerid][pChar][1]);
acc_int_strcat(query, sizeof(query), "pChar2", PlayerInfo[playerid][pChar][2]);
acc_int_strcat(query, sizeof(query), "pViborChar", PlayerInfo[playerid][pViborChar]);
acc_float_strcat(query, sizeof(query), "pSHealth", PlayerInfo[playerid][pSHealth]);
acc_float_strcat(query, sizeof(query), "pHealth", PlayerInfo[playerid][pHealth]);
acc_int_strcat(query, sizeof(query), "pInt", PlayerInfo[playerid][pInt]);
acc_int_strcat(query, sizeof(query), "pLocal", PlayerInfo[playerid][pLocal]);
acc_int_strcat(query, sizeof(query), "pModel", PlayerInfo[playerid][pModel]);
acc_int_strcat(query, sizeof(query), "pPnumber", PlayerInfo[playerid][pPnumber]);
acc_int_strcat(query, sizeof(query), "pPayDay", PlayerInfo[playerid][pPayDay]);
acc_int_strcat(query, sizeof(query), "pPayDayHad", PlayerInfo[playerid][pPayDayHad]);
acc_int_strcat(query, sizeof(query), "pTut", PlayerInfo[playerid][pTut]);
acc_int_strcat(query, sizeof(query), "pWarns", PlayerInfo[playerid][pWarns]);
acc_int_strcat(query, sizeof(query), "punWarns", PlayerInfo[playerid][punWarns]);
acc_int_strcat(query, sizeof(query), "punWarnstime", PlayerInfo[playerid][punWarnstime]);
acc_int_strcat(query, sizeof(query), "pFuel", PlayerInfo[playerid][pFuel]);
acc_int_strcat(query, sizeof(query), "pMarried", PlayerInfo[playerid][pMarried]);
acc_str_strcat(query, sizeof(query), "pMarriedTo", PlayerInfo[playerid][pMarriedTo]);
acc_int_strcat(query, sizeof(query), "pMushrooms", PlayerInfo[playerid][pMushrooms]);
acc_int_strcat(query, sizeof(query), "pMuteTime", PlayerInfo[playerid][pMuteTime]);
acc_int_strcat(query, sizeof(query), "pMobile", PlayerInfo[playerid][pMobile]);
acc_int_strcat(query, sizeof(query), "pBank", PlayerInfo[playerid][pBank]);
acc_int_strcat(query, sizeof(query), "pLocked", PlayerInfo[playerid][pLocked]);
acc_int_strcat(query, sizeof(query), "pBanDay", PlayerInfo[playerid][pBanDay]);
acc_int_strcat(query, sizeof(query), "pBanMounth", PlayerInfo[playerid][pBanMounth]);
acc_int_strcat(query, sizeof(query), "pKrisha", PlayerInfo[playerid][pKrisha]);
acc_int_strcat(query, sizeof(query), "pUseKrisha", PlayerInfo[playerid][pUseKrisha]);
acc_int_strcat(query, sizeof(query), "pDolg", PlayerInfo[playerid][pDolg]);
acc_int_strcat(query, sizeof(query), "pBoxSkill", PlayerInfo[playerid][pBoxSkill]);
acc_int_strcat(query, sizeof(query), "pKongfuSkill", PlayerInfo[playerid][pKongfuSkill]);
acc_int_strcat(query, sizeof(query), "pKickboxSkill", PlayerInfo[playerid][pKickboxSkill]);
acc_str_strcat(query, sizeof(query), "pDostup", PlayerInfo[playerid][pDostup]);
acc_int_strcat(query, sizeof(query), "pZakonp", PlayerInfo[playerid][pZakonp]);
acc_int_strcat(query, sizeof(query), "pAddiction", PlayerInfo[playerid][pAddiction]);
acc_int_strcat(query, sizeof(query), "pMats", PlayerInfo[playerid][pMats]);
acc_int_strcat(query, sizeof(query), "pNarcoLomka", PlayerInfo[playerid][pNarcoLomka]);
acc_int_strcat(query, sizeof(query), "pProcents", PlayerInfo[playerid][pProcents]);
acc_int_strcat(query, sizeof(query), "pWheels", PlayerInfo[playerid][pWheels]);
acc_int_strcat(query, sizeof(query), "pPaintJob", PlayerInfo[playerid][pPaintJob]);
acc_int_strcat(query, sizeof(query), "pSpoiler", PlayerInfo[playerid][pSpoiler]);
acc_int_strcat(query, sizeof(query), "pBumper1", PlayerInfo[playerid][pBumper1]);
acc_int_strcat(query, sizeof(query), "pBumper2", PlayerInfo[playerid][pBumper2]);
acc_int_strcat(query, sizeof(query), "pColor1", PlayerInfo[playerid][pColor][0]);
acc_int_strcat(query, sizeof(query), "pColor2", PlayerInfo[playerid][pColor][1]);
acc_int_strcat(query, sizeof(query), "pNitro", PlayerInfo[playerid][pNitro]);
acc_int_strcat(query, sizeof(query), "pHydrawlic", PlayerInfo[playerid][pHydrawlic]);
acc_int_strcat(query, sizeof(query), "pMestoJail", PlayerInfo[playerid][pMestoJail]);
acc_int_strcat(query, sizeof(query), "pHousecash", PlayerInfo[playerid][pHousecash]);
acc_int_strcat(query, sizeof(query), "pWantedLevel", PlayerInfo[playerid][pWantedLevel]);
acc_int_strcat(query, sizeof(query), "pChas", PlayerInfo[playerid][pChas]);
acc_int_strcat(query, sizeof(query), "pMin", PlayerInfo[playerid][pMin]);
acc_int_strcat(query, sizeof(query), "pSkilla",PlayerInfo[playerid][pSkilla]);
acc_int_strcat(query, sizeof(query), "pLighter",PlayerInfo[playerid][pLighter]);
acc_int_strcat(query, sizeof(query), "pCigarettes",PlayerInfo[playerid][pCigarettes]);
acc_int_strcat(query, sizeof(query), "pRecognition",PlayerInfo[playerid][pRecognition]);
acc_int_strcat(query, sizeof(query), "pRobHouse",PlayerInfo[playerid][pRobHouse]);
acc_str_strcat(query, sizeof(query), "pEmail", PlayerInfo[playerid][pEmail]);
new year, month, day;
getdate(year, month, day);
new strstre[50];
new sendername[MAX_PLAYER_NAME];
GetPlayerName(playerid,sendername,sizeof(sendername));
format(strstre,sizeof(strstre), "%d/%d/%d",day,month,year);
acc_str_strcat(query, sizeof(query), "pOnline", strstre);
format(strstre,sizeof(strstre), "%d:%d",PlayerInfo[playerid][pChas],PlayerInfo[playerid][pMin]);
acc_str_strcat(query, sizeof(query), "pOnlineLid", strstre);
strdel(query, strlen(query)-1, strlen(query));
format(string,sizeof(string)," WHERE `Name` = '%s'",sendername);
strcat(query, string);
mysql_query(query);
if(strlen(query) >= 4500) printf("Внимание! Аккаунт %s не смог сохранится!",sendername);
}
}
return true;
}
PHP:
publics: OnPlayerRegister(playerid)
{
new string[128];
new query[3000];
if(IsPlayerConnected(playerid))
{
query = "UPDATE `accounts` SET ";
acc_int_strcat(query, sizeof(query), "pLevel",1);
acc_int_strcat(query, sizeof(query), "pPhousekey",999);
acc_int_strcat(query, sizeof(query), "pPbiskey",255);
acc_int_strcat(query, sizeof(query), "pAdmin",0);
acc_int_strcat(query, sizeof(query), "pForma",0);
acc_int_strcat(query, sizeof(query), "pJobHealLeader",0);
acc_int_strcat(query, sizeof(query), "pJobHeal",0);
acc_float_strcat(query, sizeof(query), "pFuelcar",300);
acc_int_strcat(query, sizeof(query), "pText",0);
acc_int_strcat(query, sizeof(query), "pHP",100);
acc_int_strcat(query, sizeof(query), "pCheckip",0);
acc_int_strcat(query, sizeof(query), "pPhoneBook",0);
acc_int_strcat(query, sizeof(query), "pDirectory",0);
acc_int_strcat(query, sizeof(query), "pCar",462);
acc_int_strcat(query, sizeof(query), "pDonatechet",0);
acc_int_strcat(query, sizeof(query), "pDonatemoney",0);
acc_int_strcat(query, sizeof(query), "pDonateRank",0);
acc_int_strcat(query, sizeof(query), "pReg", 0);
acc_int_strcat(query, sizeof(query), "pSex", PlayerInfo[playerid][pSex]);
acc_int_strcat(query, sizeof(query), "pArrested",0);
acc_int_strcat(query, sizeof(query), "pMuted",0);
acc_int_strcat(query, sizeof(query), "pCrimes",0);
acc_int_strcat(query, sizeof(query), "pExp",0);
acc_int_strcat(query, sizeof(query), "pCash",150000);
acc_int_strcat(query, sizeof(query), "pKills",0);
acc_int_strcat(query, sizeof(query), "pDeaths",0);
acc_int_strcat(query, sizeof(query), "pPayCheck",0);
acc_int_strcat(query, sizeof(query), "pJailed",0);
acc_int_strcat(query, sizeof(query), "pCheat",0);
acc_int_strcat(query, sizeof(query), "pJailTime",0);
acc_int_strcat(query, sizeof(query), "pMats",0);
acc_int_strcat(query, sizeof(query), "pDrugs",0);
acc_int_strcat(query, sizeof(query), "pLeader",0);
acc_int_strcat(query, sizeof(query), "pMember",0);
acc_int_strcat(query, sizeof(query), "pRank",0);
acc_int_strcat(query, sizeof(query), "pJob",0);
acc_int_strcat(query, sizeof(query), "pCarLic",0);
acc_int_strcat(query, sizeof(query), "pBizLic",0);
acc_int_strcat(query, sizeof(query), "pFlyLic",0);
acc_int_strcat(query, sizeof(query), "pBoatLic",0);
acc_int_strcat(query, sizeof(query), "pFishLic",0);
acc_int_strcat(query, sizeof(query), "pGunLic",0);
acc_int_strcat(query, sizeof(query), "pSlot1",0);
acc_int_strcat(query, sizeof(query), "pSlot2",0);
acc_int_strcat(query, sizeof(query), "pSlot3",0);
acc_int_strcat(query, sizeof(query), "pSlot4", PlayerInfo[playerid][pSlot4]);
acc_int_strcat(query, sizeof(query), "pSlot5", PlayerInfo[playerid][pSlot5]);
acc_int_strcat(query, sizeof(query), "pSlot6", PlayerInfo[playerid][pSlot6]);
acc_int_strcat(query, sizeof(query), "pSlot7", PlayerInfo[playerid][pSlot7]);
acc_int_strcat(query, sizeof(query), "pSlot8", PlayerInfo[playerid][pSlot8]);
acc_int_strcat(query, sizeof(query), "pSlot9", PlayerInfo[playerid][pSlot9]);
acc_int_strcat(query, sizeof(query), "pSlot10", PlayerInfo[playerid][pSlot10]);
acc_int_strcat(query, sizeof(query), "pSlot11", PlayerInfo[playerid][pSlot11]);
acc_int_strcat(query, sizeof(query), "pSlotammo1", PlayerInfo[playerid][pSlotammo1]);
acc_int_strcat(query, sizeof(query), "pSlotammo2", PlayerInfo[playerid][pSlotammo2]);
acc_int_strcat(query, sizeof(query), "pSlotammo3", PlayerInfo[playerid][pSlotammo3]);
acc_int_strcat(query, sizeof(query), "pSlotammo4", PlayerInfo[playerid][pSlotammo4]);
acc_int_strcat(query, sizeof(query), "pSlotammo5", PlayerInfo[playerid][pSlotammo5]);
acc_int_strcat(query, sizeof(query), "pSlotammo6", PlayerInfo[playerid][pSlotammo6]);
acc_int_strcat(query, sizeof(query), "pSlotammo7", PlayerInfo[playerid][pSlotammo7]);
acc_int_strcat(query, sizeof(query), "pSlotammo8", PlayerInfo[playerid][pSlotammo8]);
acc_int_strcat(query, sizeof(query), "pSlotammo9", PlayerInfo[playerid][pSlotammo9]);
acc_int_strcat(query, sizeof(query), "pSlotammo10", PlayerInfo[playerid][pSlotammo10]);
acc_int_strcat(query, sizeof(query), "pSlotammo11", PlayerInfo[playerid][pSlotammo11]);
acc_int_strcat(query, sizeof(query), "pGunSkill1", 0);
acc_int_strcat(query, sizeof(query), "pGunSkill2", 0);
acc_int_strcat(query, sizeof(query), "pGunSkill3", 0);
acc_int_strcat(query, sizeof(query), "pGunSkill4", 0);
acc_int_strcat(query, sizeof(query), "pGunSkill5", 0);
acc_int_strcat(query, sizeof(query), "pGunSkill6", 0);
acc_int_strcat(query, sizeof(query), "ptaxiexp",0);
acc_int_strcat(query, sizeof(query), "ptaxilvl",0);
acc_int_strcat(query, sizeof(query), "pDLevel",0);
acc_int_strcat(query, sizeof(query), "pDExp",0);
acc_int_strcat(query, sizeof(query), "pDMgruz",0);
acc_int_strcat(query, sizeof(query), "pDgruz",0);
acc_int_strcat(query, sizeof(query), "pKazpay",0);
acc_int_strcat(query, sizeof(query), "pChar",PlayerInfo[playerid][pChar][0]);
acc_int_strcat(query, sizeof(query), "pChar1",230);
acc_int_strcat(query, sizeof(query), "pChar2",230);
acc_int_strcat(query, sizeof(query), "pViborChar",0);
acc_float_strcat(query, sizeof(query), "pSHealth",100);
acc_float_strcat(query, sizeof(query), "pHealth",100);
acc_int_strcat(query, sizeof(query), "pInt",0);
acc_int_strcat(query, sizeof(query), "pLocal",255);
acc_int_strcat(query, sizeof(query), "pModel",0);
acc_int_strcat(query, sizeof(query), "pPnumber",Random(100000,999999));
acc_int_strcat(query, sizeof(query), "pPayDay",0);
acc_int_strcat(query, sizeof(query), "pPayDayHad",0);
acc_int_strcat(query, sizeof(query), "pTut",1);
acc_int_strcat(query, sizeof(query), "pWarns",0);
acc_int_strcat(query, sizeof(query), "punWarns",0);
acc_int_strcat(query, sizeof(query), "punWarnstime",0);
acc_int_strcat(query, sizeof(query), "pFuel",0);
acc_int_strcat(query, sizeof(query), "pMarried",0);
acc_str_strcat(query, sizeof(query), "pMarriedTo","-");
acc_str_strcat(query, sizeof(query), "pDrug",PlayerInfo[playerid][pDrug]);
acc_int_strcat(query, sizeof(query), "pMushrooms",0);
acc_int_strcat(query, sizeof(query), "pMuteTime",0);
acc_int_strcat(query, sizeof(query), "pMobile",0);
acc_int_strcat(query, sizeof(query), "pBank",0);
acc_int_strcat(query, sizeof(query), "pLocked",0);
acc_int_strcat(query, sizeof(query), "pBanDay",0);
acc_int_strcat(query, sizeof(query), "pBanMounth",0);
acc_int_strcat(query, sizeof(query), "pKrisha",0);
acc_int_strcat(query, sizeof(query), "pUseKrisha",0);
acc_int_strcat(query, sizeof(query), "pDolg",0);
acc_int_strcat(query, sizeof(query), "pBoxSkill",0);
acc_int_strcat(query, sizeof(query), "pKongfuSkill",0);
acc_int_strcat(query, sizeof(query), "pKickboxSkill",0);
acc_str_strcat(query, sizeof(query), "pDostup","ertiengfj");
acc_int_strcat(query, sizeof(query), "pZakonp",0);
acc_int_strcat(query, sizeof(query), "pAddiction",0);
acc_int_strcat(query, sizeof(query), "pMats",0);
acc_int_strcat(query, sizeof(query), "pNarcoLomka",0);
acc_int_strcat(query, sizeof(query), "pProcents",100);
acc_int_strcat(query, sizeof(query), "pWheels",0);
acc_int_strcat(query, sizeof(query), "pPaintJob",0);
acc_int_strcat(query, sizeof(query), "pSpoiler",0);
acc_int_strcat(query, sizeof(query), "pBumper1",0);
acc_int_strcat(query, sizeof(query), "pBumper2",0);
acc_int_strcat(query, sizeof(query), "pColor1",0);
acc_int_strcat(query, sizeof(query), "pColor2",0);
acc_int_strcat(query, sizeof(query), "pNitro",0);
acc_int_strcat(query, sizeof(query), "pHydrawlic",0);
acc_int_strcat(query, sizeof(query), "pMestoJail",0);
acc_int_strcat(query, sizeof(query), "pHousecash",0);
acc_int_strcat(query, sizeof(query), "pWantedLevel",0);
acc_int_strcat(query, sizeof(query), "pChas",0);
acc_int_strcat(query, sizeof(query), "pMin",0);
acc_int_strcat(query, sizeof(query), "pSkilla",0);
acc_int_strcat(query, sizeof(query), "pLighter",0);
acc_int_strcat(query, sizeof(query), "pCigarettes",0);
acc_int_strcat(query, sizeof(query), "pRecognition",0);
acc_int_strcat(query, sizeof(query), "pRobHouse",0);
acc_str_strcat(query, sizeof(query), "pEmail", PlayerInfo[playerid][pEmail]);
new playersip[64];
GetPlayerIp(playerid,playersip,sizeof(playersip));
new year, month, day;
getdate(year, month, day);
new strstre[50];
new sendername[MAX_PLAYER_NAME];
GetPlayerName(playerid,sendername,sizeof(sendername));
format(strstre,sizeof(strstre), "%d/%d/%d",day,month,year);
acc_str_strcat(query, sizeof(query), "pOnline", strstre);
acc_str_strcat(query, sizeof(query), "pvIp", playersip);
acc_str_strcat(query, sizeof(query), "pDataReg", strstre);
acc_str_strcat(query, sizeof(query), "pIpReg", playersip);
format(strstre,sizeof(strstre), "%d:%d",PlayerInfo[playerid][pChas],PlayerInfo[playerid][pMin]);
acc_str_strcat(query, sizeof(query), "pOnlineLid", strstre);
strdel(query, strlen(query)-1, strlen(query));
format(string,sizeof(string)," WHERE `Name` = '%s'",sendername);
strcat(query, string);
mysql_query(query);
printf("Register");
OnPlayerLoginToServer(playerid);
}
return true;
}
В паблике - publics: OnPlayerUpdateAc(playerid)
У переменной - query, размер 4500.
И в паблике - publics: OnPlayerRegister(playerid)
У переменной - query, размер 3000.
Из-за этих: new query[4500]; | new query[3000]; - большая нагрузка.
Вопрос заключается в том, как оптимизировать эти паблики? Не создавая этих больших размеров у переменной. Эти размеры слишком влияют на память в stack.
---------- Post added at 02:38 ---------- Previous post was at 02:32 ----------
#pragma dynamic 100500 - не советовать.
Последнее редактирование:
