برنامه ریزی خودکار برای دریافت اطلاعات از سرور
درود خدمت شما .
من برای دکمه های پایین اپلیکیشنم نیاز به این دارم هر چند ثانیه ( مثلا ۱۰ ) یک بار سرور چک بشود که آیا مطلب جدیدی وجود دارد اگر دارد تعداد آن را نمایش دهد و اگر ندارد که هیچی برای این کار از کد زیر استفاده کردم
Timer.scheduledTimer(timeInterval: 10, target: self, selector: #selector(createEnemy), userInfo: nil, repeats: true)
createEnemy همان فانکشنی هست که می رود از سرور یک چیزی می خواند . خوب تا اینجا مشکلی نبود چون هیچ وقت به رم دقت نمی کردم ولی الان متوجه شدم بعد از فعال کردن این کد در viewDidLoad ویوی اصلیم ( اولم )
۱. در تمام view های دیگر این کد کار می کند بدون اینکه من ازش خواسته باشم
۲. رم رو به مرور زمان زیباد می کند ( این مورد خیلی ضروری هست )
آیا شما برای حل مشکل دوم راه حل دیگری در نظر دارید ؟ فکر کنید اپلیکیشن گوگل برای فراخوانی ایمیل جدید دارید و می خواهد چک کند ببنید آیا ایمیل جدید آماده یا خیر و این فراخوانی فقط به وسیله خود اپ انجام بگیرد نه کاربر هر لحظه روی آن کلیک کند
با تشکر
این که مصرف رم مرتب داره میره بالا به نظرم میتونه مستفیم ربطی به این قضیه نداشته باشه. مصرف رم وقتی بیهوده میره بالا که شما Memory Leak داشته باشی. من اپلیکیشن گوگل رو استفاده نکردم ولی به طور کلی اپ های اینجوری یا هر چند ثانیه/دقیقه خاصی مثل شما چک میکنن یا این که Socket Based هستن و اطلاعات جدید براشون ارسال میشه.
Timer.scheduledTimer(timeInterval: 10, target: self, selector: #selector(createEnemy), userInfo: nil, repeats: true) بعد اون createEnemy یک فانکشن که داخلش print("AAA") همین کل پروژه همینه . کمی صبر کنید مصرف رم ببنید لطفا . یباش یباش می ره بالا (9 سال پیش)
پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .