PDA

View Full Version : در مورد دیلی یا تاخیر



yaran891
جمعه 30 دی 1384, 10:46 صبح
سلام کسی در مورد دیلی می تونه به من کمک کنه؟
من می خواهم تو یک دستور دیلی بندازم ؟

seyedof
جمعه 30 دی 1384, 11:28 صبح
سلام
تابع Sleep
ممنون علی

yaran891
جمعه 30 دی 1384, 17:33 عصر
ممنون اگه دستور دیگه ای هم هست توضیح می شه بدید

mohammad222
جمعه 07 بهمن 1384, 01:52 صبح
با دستور delay میتوانید برحسب میلی ثانیه وقفه ایجاد کنید
البته خودتون هم می تونید به صورت دستی یه حلقه بزارید و تا دلتون می خواد زمانشو رو زیاد یا کم کنید این بهترین حالتو داره!!!!!!!!!!!

C++Lover
جمعه 07 بهمن 1384, 03:01 صبح
پیشنهاد می کنم از حلقه استفاده نکنید چون موجب مشغول ماندن thread جاری و گرفتن time slice سی پی یو می شود. تا جایی که ممکن است thread های با priority خیلی پایین تر اصلا اجرا نشوند. بهترین راه همان استفاده از Sleep است.

seyedof
جمعه 07 بهمن 1384, 12:11 عصر
سلام
حلقه به هیچ وجه برای ایجاد تاخیر مناسب نیست و روش درستی هم نیست. راه حلش همون توابع مخصوص اینکار است.
ممنون علی

amir master
جمعه 07 بهمن 1384, 17:56 عصر
آره راس میگن

siapro
شنبه 08 بهمن 1384, 19:40 عصر
والا ایت تابع sleepتو هر محیطی کار نمی کنه. فقط توی محیط 16 بیتی جواب میده.راه دیگه ندارید؟

Anti_Evil
یک شنبه 09 بهمن 1384, 01:07 صبح
با اجازه همگی من هم دو خط در مورد مقوله "delay" بنویسم ..

ببنید ایجاد تاخیر به 4 تا مسئله مهم بستگی داره:

1- بستر سخت افزاری
2- سیستم عامل
3- کامپایلر
4- انگیزه و هدف !

بنابراین تقریبا هیچ راه ثابت و خاصی وجود نداره که بشه پیشنهاد داد.

مثال 1: (بستر سخت افزاری)
در حال پروگرام کردن یک Chipset هستید ... داستان دیگه کاملا با تولید وقفه در یک برنامه قابل اجرا روی PC دنبال میشه

مثال 2: (سیستم عامل)
تابع Sleep برای استفاده در برنامه Win32 هستش و طبیعتا نمیتونید انتظار داشته باشید که روی FreeBSD جواب بگیرید :)

مثال 3: (انگیزه)
این وقفه قراره برای چه منظوری استفاده یشه ؟
قراره این وقفه روی چه پروسس هایی تاثیر بزاره ؟! و ....

---

الف) جواب دوست خوبم جناب آقای سیداف کاملا صحیحه، جواب متداولی که برای کاربرد در برنامه های Win32 توصیه میشه ..

ب) دوست عزیز yaran، برای گرفتن جواب مناسب تر بهتره بیشتر در مورد مشکلت توضیح بدی اینطوری بقیه دوستان میتونن بیشتر راهنماییت کنن. ( من حتی شاید با ایده دوستمون که استفاده از حلقه ها ( با اینکه شاید کار غیر منطقی به نظر برسه ) موافق باشم، عرض کردم .. بستگی به شرایط داره )

ج) siapro عزیز، Sleep در Win16 و Win32 قابل استفاده است.