417-sahifa
Python 3
404
Ko'p yo'nalishli ustuvorlik navbat
Quyruq moduli siz ma'lum bir ushlab mumkin bo'lgan yangi navbat ob'ektini yaratish imkonini beradi
elementlar soni. Navbatni boshqarish uchun quyidagi usullar mavjud -
get (): get () elementni navbatdan olib tashlaydi va qaytaradi.
put (): Put elementni navbatga qo'shadi.
qsize (): qsize () navbatdagi elementlar sonini qaytaradi.
empty (): bo'sh (), agar navbat bo'sh bo'lsa, True ni qaytaradi; aks holda, False.
full (): to'liq (), agar quyruq to'lgan bo'lsa, True ga qaytadi; aks holda, False.
Misol
#! / usr / bin / python3
import navbat
import iplari
import vaqti
exitFlag = 0
sinf myThread (threading.Thread):
def __init __ (o'zi, threadID, nomi, q):
tishlash .Tread .__ tashabbusi __ (o'zi)
self.threadID = threadID
self.name = ism
self.q = q
def run (o'zini):
bosib chiqarish ("Boshlash" + self.name)
process_data (self.name, self.q)
bosib chiqarish ("Chiqish" + self.name)
def process_data (threadName, q):
chiqmay turibFlag:
queueLock.acquire ()
agar ishlamasaQueue.empty ():
ma'lumotlar = q.get ()
queueLock.release ()
chop etish ("% s ishlov berish% s"% (threadName, ma'lumotlar))
yana:
queueLock.release ()
Python 3
405
uxlash vaqti (1)
threadList = ["Mavzu-1", "Ip-2", "Mavzu-3"]
nameList = ["Bir", "Ikki", "Uch", "To'rt", "Besh"]
queueLock = tishlash.Lock ()
workQueue = navbat. Savol (10)
mavzular = []
threadID = 1
# Yangi mavzularni yarating
threadListdagi tName uchun:
mavzu = myThread (threadID, tName, workQueue)
thread.start ()
mavzu
threadID + = 1
# Navbatni to'ldiring
queueLock.acquire ()
nameListdagi so'z uchun:
workQueue.put (so'z)
queueLock.release ()
# Navbat bo'sh bo'lishini kuting
ishlamay turibQueue.empty ():
o'tish
# Chiqish vaqti keldi, deb xabar bering
exitFlag = 1
# Barcha iplar tugashini kuting
iplar uchun t:
t.join ()
chop etish ("Asosiy mavzudan chiqish")
Yuqoridagi kod bajarilganda, u quyidagi natijani beradi -
Mavzu-1
Mavzu-2
Mavzu-3
Python 3
406
Ip-1 ishlov berish
Ip-2 ishlovi ikkita
Ip-3 ishlov berish uch
Ip-1 to'rtta ishlov berish
Ip-2 ishlov berish beshligi
Mavzu-3 dan chiqish
Ilovadan chiqish-1
Mavzu-2 dan chiqish
Asosiy mavzudan chiqish
Python 3
407
XML bu dasturchilarga dasturlarni ishlab chiqishga imkon beradigan ko'chma, ochiq manbali til
operatsion tizim va / yoki qanday bo'lishidan qat'iy nazar boshqa ilovalar tomonidan o'qilishi mumkin
rivojlanish tili.
XML nima?
Kengaytiriladigan belgilash tili (XML) HTML yoki SGML kabi belgilash tilidir.
Bu World Wide Web Consortium tomonidan tavsiya etiladi va ochiq sifatida mavjud
standart.
XML kichik va o'rta hajmdagi ma'lumotni kuzatmasdan ushlab turish uchun juda foydali
SQL asosidagi orqa miya talab qiladi.
Do'stlaringiz bilan baham: |