বাশের একটি "লোডযোগ্য" ঘুম রয়েছে যা ভগ্নাংশের সেকেন্ডগুলিকে সমর্থন করে এবং একটি বাহ্যিক কমান্ডের ওভারহেডগুলি সরিয়ে দেয়:
$ cd bash-3.2.48/examples/loadables
$ make sleep && mv sleep sleep.so
$ enable -f sleep.so sleep
তারপর:
$ which sleep
/usr/bin/sleep
$ builtin sleep
sleep: usage: sleep seconds[.fraction]
$ time (for f in `seq 1 10`; do builtin sleep 0.1; done)
real 0m1.000s
user 0m0.004s
sys 0m0.004s
খারাপ দিকটি হ'ল লোডেবলগুলি আপনার bash
বাইনারি সরবরাহ করা যায় না , সুতরাং আপনাকে সেগুলি প্রদর্শিত হিসাবে সেগুলি নিজেই সংকলন করতে হবে (যদিও সোলারিসে এটি উপরের মতো সহজ হবে না)।
এর হিসাবেbash-4.4
(সেপ্টেম্বর 2016) সমস্ত loadables এখন আগে থেকেই রয়েছে ও প্ল্যাটফর্মে যা এটিকে সমর্থন করে, যদিও তারা পৃথক ভাগ-বস্তুর ফাইল হিসেবে আগে থেকেই রয়েছে ডিফল্টরূপে ইনস্টল, এবং একটি ছাড়া .so
প্রত্যয়। যদি না আপনার ডিস্ট্রো / ওএস সৃজনশীল কিছু করে থাকে তবে আপনার পরিবর্তে এটি করতে সক্ষম হওয়া উচিত:
[ -z "$BASH_LOADABLES_PATH" ] &&
BASH_LOADABLES_PATH=$(pkg-config bash --variable=loadablesdir 2>/dev/null)
enable -f sleep sleep
(ম্যান পেজটি ইঙ্গিত করে BASH_LOADABLES_PATH
যে এটি স্বয়ংক্রিয়ভাবে সেট হয়ে গেছে, আমি দেখতে পেয়েছি যে ৪.৪.১২ হিসাবে সরকারী বিতরণে এটি ঘটেনি If যদি এবং এটি সঠিকভাবে সেট করা হয় তবে আপনার প্রয়োজন অনুযায়ী কেবল enable -f filename commandname
প্রয়োজন))
যদি এটি উপযুক্ত না হয় তবে পরবর্তী সহজ কাজটি হ'ল sleep
জিএনইউ কোর্টিলগুলি তৈরি করা বা নেওয়া, এটি প্রয়োজনীয় বৈশিষ্ট্যটিকে সমর্থন করে। POSIX sleep
কমান্ডটি ন্যূনতম, পুরানো সোলারিস সংস্করণ কেবল এটি প্রয়োগ করেছে implemented সোলারিস 11sleep
ভগ্নাংশ সেকেন্ড সমর্থন করে ।
একটি শেষ অবলম্বন হিসাবে আপনি perl
(বা অন্য যে কোনও স্ক্রিপ্টিং যা আপনাকে হস্তান্তরিত করতে হবে) সেই ক্যাভেটের সাথে ব্যবহার করতে পারেন যে দোভাষীকে আরম্ভ করার উদ্দেশ্যটি ঘুমের সময়ের সাথে তুলনীয় হতে পারে:
$ perl -e "select(undef,undef,undef,0.1);"
$ echo "after 100" | tclsh