تبلیغات
تبلیغات

تابع delay در Processing – تاخیر در اجرای draw

تابع delay، برای ایجاد وقفه یا تاخیر در اجرای متد draw به کار برده می‌شود! یعنی هرجایی از متد draw که این تابع صدا زده شود، با دریافت یک زمان معینی، آن میزان وقفه ایجاد خواهد کرد و ادامه‌ی خطوط بعد از گذشت آن زمان تعیین شده اجرا می‌شوند. در واقع این تابع، همان کار متد Thread.Sleep موجود در جاوا را انجام می‌دهد.

توجه داشته باشید که صفحه‌ی نمایش زمانی آپدیت می‌شود که تابع draw() به انتهای خود برسد؛ و سپس مجددا این تابع از ابتدا و در فریم بعدی اجرا خواهد شد. پس به کمک delay می‌توانیم در هرجایی از بدنه‌ی تابع draw، وقفه‌ای ایجاد کنیم. و تا زمانی که draw به انتهای خود نرسد، هرچیز ترسیم شده‌ای نمایش داده نخواهد شد.

بنابراین با توجه به اینکه این تابع وقفه ایجاد می‌کند و صفحه نمایش تنها زمانی به روز رسانی می‌شود که تابع draw به انتهای خود رسیده باشد، از آن نمیتوان برای مواردی مثل آهسته کردن سرعت ترسیم و یا کنترل زمان انیمیشن‌ها استفاده کرد.

راهنما

سینتکس و ساختار حالت‌های مختلف تابع:

ورودی‌ها:

  • napTime (از نوع int): میزان زمان تاخیر یا وقفه برحسب میلی ثانیه (هر هزار میلی ثانیه برابر است با یک ثانیه)

خروجی: void (ندارد)

مثال‌ها

مثال اول: در اینجا، با ایجاد یک توقف یک ثانیه‌ای، کاری می‌کنیم تا یک ثانیه شمار به وجود آید:
(البته این مثال با delay منطقی نیست به دلیلی که در بالا گفته شده؛ چون آپدیت صفحه را متوقف خواهد کرد و بهتر است از Threadهای جدا برای چنین کاری استفاده کرد)


مثال دوم: یک تاخیر به وجود آورده‌ایم تا پورت سریال خوانده شود:

مرتبط

  • متغیر frameRate
  • تابع draw
کانال تلگرام فول کده
تبلیغات

درباره نویسنده

هادی اکبرزاده

[ مدیر فول کده ]

علاقه‌مند به اشتراک‌گذاری اطلاعات در هر زمینه‌ای
برنامه‌نویس فول استک

پاسخ دهید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

نظرات ثبت شده بدون دیدگاه