Implementieren Sie einen einfachen DelayedBuffer, der es ermöglicht Aufgaben (d. h. Objekte vom Typ Callable) erst nach einer bestimmten Zeit auszuführen. Die Klasse muss zwei Funktionen zur Verfügung stellen:
- submit(self, delay, fn, *args, **kwargs):
Die Funktion fn wird nach delay Sekunden ausgeführt wobei delay vom Typ Float ist. args und kwargs sind die Argumente, die an fn übergeben werden.
- join(self):
Wartet bis alle Aufgaben abgearbeitet wurden.
Im Folgenden sehen Sie eine mögliche Verwendung des Puffers:
buffer = DelayedBuffer()
buffer.submit(100 / 1000, ts_print, "Hello ", **{"end": "", "flush": True})
buffer.submit(1000 / 1000, ts_print, "World!")
buffer.submit(500 / 1000, ts_print, "of the ", **{"end": "", "flush": True})
buffer.submit(200 / 1000, ts_print, "from ", **{"end": "", "flush": True})
buffer.submit(300 / 1000, ts_print, "the other side ", **{"end": "", "flush": True})
buffer.join()
print("Done.")
Implementation mit Threads
Implementieren Sie die Klasse DelayedBuffer mit Hilfe von Threads (und ggf. Queues bzw. Locks).
Implementieren Sie ts_print als Thread-sichere Variante von print.
MTAwMDAw:FnAhuAd7y142f1vA0nznmwMktXMhlY+S3ggl6njy3mg=:oK1Om60ZWRc1H0up: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
Implementation mit Threadpool
Implementieren Sie die Klasse DelayedBuffer mit Hilfe eines concurrent.futures.ThreadPools (und ggf. Queues bzw. Locks).
Implementieren Sie ts_print als Thread-sichere Variante von print. Wählen Sie ggf. eine andere Implementierung als in der vorherigen Aufgabe.
MTAwMDAw:zVpx2ezIm4GssW2lUMfbOclbnyueVw5YoZ+LAfo7LPA=:9KWn0Vjw82BBkIGB:S8fjQVlYw4jA6FADQMtIhgBbeeBioY/uenBdFTF7IGdl19QW9MakGhDLIXKS3/Z5N038etN0ygETJ9USJgh5E4yT6K+ITb1SId0wMSS27t5T30wPECUypqqx9pFzTtH8rYltbIqrBwrtKtpBq0xVCoRrQmzO+57Pu9b0sR3WPabTXAkLN3ijagCQbgSNlWRQZ7tZxK13ziuTXOFLu3aMbPcCEKVNaaV0eYQsQfOPWZwuQLU5JN72d+EvQmW9rgETQt7fLHDXfv+GuKeJf8PwDTicUCSC+pr7W7m61cq6Bf8TKYPrVRLAAa940ziVqZr66hd9yTdIhrixtQlFs0RXoGa+E289qRQrae7GVBvKq2CzDCX5uz8v8X3cVf80aHqI1kBPDcRyM4SDOYZ0BRoYq9fcaxm1PI0cnKq7Cf0WwU9jDY71jojWRCt6Y7Vw/Qnsp4Z8K7kPBfYYDhFwHXrQBvPkXiwOPzqaoXkn2AA7HpGPKVTQuoLq7C4mWH8sA5cAx62gInFKE+S6gyzPBdnMLaPW0rOMjmhXmBXVaXM3JvovfW2vMe+4zgywauCmehoVzOiv/LDAKgzcfG0tBFKwT9M/F8m2AtFj7utpZGCRgF+B2aQwbOsd6HzRf5B5OZRnJoAujRB4shgT9pnzgXAn9x74yj5UiCm1XlG3CACMDGBzjcoLgObfeDiGhiqF9CkHxAFx1MUgc03nDSUuPGHR0YaOHj+gdTOQygItEyCZUndZynk7PpcATHUN+djSxVoXRB0Iv9NUtpCf/xtOrdq1GkSClF4pNfTGdvcMaYjQnYa7vIVkPK2MwW01xy2ACCaPgVD0ASQb5vpqXWU/UNWUHyhdUJE+VmuAmuyJ6wRMy7PoRiGo6Cecq5k8/76dkCk6NfO4BMBbiS991wt8qloFThmBSN22sHMSAKRigi99Vk+4fz1xA24kdDK2D81Q+YaMLRJ/h4XtINilLDQFoZb9QRIniTjs0qcKHe/In8mdNm10XfaRVy+5ZZx04JVEC0jc28NT58luD5HFPPy1p+vPwyZbSDq1lDHAcaiv9qGur18WoZYpBXKNfxXJnNK2NA5RVZRe2AP1uEQy6zjM6GHAzxW/8y+pnsoOJRfMHMqyE8PAU1isMUD4/VL3Hli0D6IyHEWjAghVc+0SW6+8b3dHx3OigLwAfXTNgM0/0QoG4W/fFdbyEpuptqRtNTDMcg9g+EJYs/cb+amyCiUg1CktEAyqhA3BPqr0Aymwzl93ChhMgIJGDbpMEcdcKiylrk10mKw8rSJUdTcbOssfhySlrER4UD8VJuCePkEUKH8ySRH2xNiTSaAsuiz6tJLF0Ijh22xuha1eiayqK226Bt3/vEcRcbfdreLkO+aTEbUgp3T2wGQ3cb1opSs5jTYrcHFrS9zIHRMUCM9PhHMLccbJW/NCT1lb6cW4usWOHSf3w38FarI8mtJxT4e7O/qvdB84D4m0agVx8Oxk82/svCytwtbcqEhpwuAFG48TPTxerOhaoCBMxV6IkL1oVBBMLVKc4KygbfzgZUgAgmY4rXOspjFK0jJAsW5ffuNQcwpLOvsuiq+WD5dQ3tPqDdyT+7OSDKHu4acoJsQ7sqIWKMQPu235nQZa7JeF7HTvF0Ur1Ahc+EnpboIQd3nOfwrD7c5gGSGqxGmDzxwUIoPfu59NEFK0Y6Ec4vzAkeoUblqBIS42Wrgfr79AS5lqjbKfR+SDqTY3ok9px3wuXJBeu0f8/PUatcyAHx7TxaQnP8GyP2Pdh/FRE/NKwkd5hMekVRkLzPd8gsRjPnrnEni9OkaLtrP5JtIc3LI+B/zFyR9hDmo3iMWVFdJ+0GghuFYicSmiAYiw9Llr6k37/58mJwsERwlJ1bHKv6QFMa7tD9A7iDUy6Gi8JK/sbyQp2duDPvKQoCZaS/n23RHBmMR2eP4WPe2VfOZZpHoAxPCBFj+DEoYsiWerbO4BVUMzfGIfm7x2oCVNYYOGpN4/jCCOFI2syZnCcQ6DVQhGawevOIrsJXzsoGwfWoKV1soMhwI98XTELiC2SWTkyGvIzNvF5W1znyLD4R9plFo1jsSvj2RPAvNm9zat8YFEHAMPL9Aapi7/FxbPza8azzqWNP4aiAkEbTotI0X0bK5GQsuU+nxEVXWhspjrfjniItwAj9HnTTKuH4CY2k2WYeC+vulz5MgRwX1ZihRNMiKqbBf/6adxfLQkkkpDSV9Q40qYjMIEb0QxipIgo++gB0Qnh+cu+StIjKh0Aio9JQSIR7LwxCSZJBAKBTqnax+EzggQX7HcqywSJ5lyFvTRVvo6aa43REyTi3Q03RDovIrF+SGd5uAnJKd1xqSs3iPzHZdICIR3udWlf0vbhWMS94WvGbCpD/ZP9HKKHczUAUL4qcNE5/Bl4S6/C77ER5q22I3bsOJHYmVKKv9dQBr9AqOgbzzs1oQAYWHYQoLl6sGCybHB9QrfhSktBTmBnkSLHlEs1fEIrugwNAzKa2nL/OVPrW0LHyiwGScfkiyNH/ZwmA2s8v4dKuGaa0ifRWoO0wyuDkUamTiwlT4Oj/OdD3zrUI+oPMKLNRlOKg/KZqEIHfZtPdStT0dP7QdkIl0zrQ48oHiGEvdrFILxwMcl7bhNucLRnEAWjce8S9p9VmQ+y1AzfLQFLRKtRqNhbP5jxJUG0qeH5jUDWAbgthIqJCP7oP5r769bJWeGFR/zSjkY/2UyW+bxfKGk0KBEj8O7cExVIHEDLkaku2Ss7vBYsSxbTzZ6eOLbOdlv8bVlPtkXPWaCw8YA7B1gNjTalJ/CXse8cDQURyEjc/tu4cVpWGzMv+scDw2KMpJNrzfKnl6LPaRqhLKZ1bzmbeuQnct7NLj9x5hYLMEDMInDz9SCTEt9TamO5BT/WBQQNqOi1bZ80e0YrYKgUR+p+x9+eQbM5ov8yjHqvDXzhkgfjCDWEIgIOJ3ZdIOXw8eZz3gblPgQqGWFEErKtReUfzFQXrjVWQZqucEMP+8gFXTycqQ0zZQMLa8EzM+ZFxzGULAG7SNR0DF+Za1sSttrTVNKWixmzHIBuPae4Hr1PhpPVyzleWw1XhcjhwRr2DmVEkN+ssTWtAeyXFPr3CILuy/Cus+V78X57+6cp/yraweH5UNiuqAL+M89RBFCCeJVlshaUNOGUZ7kXwI1Py95n279ydOXO5lKJTI/HbV2xACQ9m25gmSvC/QeD/9BZdTw4gzTdzmAYblGx1ZjpufNAZIbZAes0uuE1QQpsRNWGNH27gK5v/Yqv5xeuSzCI54XqDo6cdCBPfjiLwpLUgrVQQBnw0ynEm+8fDf1fVy6ytyTALw7/ja9ONmQ/2fuIt6Vk48tlUl/SFtAzHNjyj7utvqQ2N1FfK1T0PUqEtMYg9D8HjMOEXvt4r0G+JxHifkvLik7NA9x9XqHMFwWgWjrcSvFXzoeJ8wQPRRdVRItD0Ge65zdMfFVRmsurzIEJfJ9t/y7DV/8YEBs8bOYLNPMVL4ubnDHAWRbBVAWLaAChjRTSFEcTKY1rYxs7JiokcQFvC5RyAAc18wEV8hNOf0Km14hhzz0Rjj1pR9DM+mIe1iTQM9gVNiubKCs00si9KM9hKiVJiSnqY9WZaj0zeswqvDPzYlLN/IOMuVLSZLsMC3Xn+UdtTy7UgN6BSwCliy/QLHlAqrUixM9x6TwZ/qkXvx8He8kGEOMXAnQIQezyW6MAJOFxBf5tvKy49Ba/1a31rTdItFPC0L+E976N3DU4SLt4y8kgk0gSUK3HceWaDpCU3QrxK3pAa4j2jYA6kC8zmi7fnhIJLLCiMca3FBOmzH4kZNIVryGY/6pA6zfJ84Mn3nq0U9WQ5lnP5C1D/whCPSY6r54GuZXnAlBwVP5YxaokxuN083FnfR6U79wQk6cX7CwZ8xidX3DMhfGWAkaPDOT7aVltvsQYRGLvjU0/3xl1BtgwB29BriRhl/k/fqXBo0V3pWZO/urdVlkrkZK6rUPk45tZetvszWMhGX/5lpHYRvqPeZCPhMROOuRCqPHdRsK6xtGQcjFfDXB0EaMoBQqQgAeI5P/zg/DpgLjm1j/LJ302Dmj4m3Ee5FVxMvMdgfdDVlO5P4kqpSOYn8iUA705pWY8TCqLM0PXWTlsnQqExPE6bkZagTPgMxoFI9wwst7F3i+PD9fYadA4eV+jbfZAqFtu2ZQOUArrlMYvUseBFnklAl9MrTL0wYWt2U8NEEykzffrH5wtGATUYhp494sTRev6O4ViCBy2yE1CiiMK8yAOaSrXtVl72Ex4x3nII8Dwgnx29shmzOBocnErhCdjRS/4gK9uK4d9l7rKl3M0rrngnUDkrHVMnrk7X2HMgPtc+YSD7OtE3HmRji8qb2FHRAsHH1mSE+vZ+R0UwSMroawxtjFSHkrJhjDz/hawynmjyRNcp2AkeevmsB+MyLCEamgIKSpwd/PoDAtXF4GI1DOacx6u5dhIhx6OnAqItJT3uXtIaDcCgezcBp1PNb6h4XavFl4oh/a+IHdCzjhwpDV8Fsi1LeOs/97JI9bE+AuRYcZLB0s3IKo2a9vhnxKA9yktYWq6Hq/Qr8Me5BG2OC62h0pgoL8Kn0c1zgMfFhqVoevUYy+h/iWFlnGb9MkDoEsuJxx3r+NHtGjbHfhFjZxMyVM9UlFJ5wNNH92FdrnhUAVr+/PJa8XGPMBk97wn79tTLbR7E8fteO28isnJ+PyQ5AMnawzRwk9OoFTfc8PIs1VMs7xjElU9zDc+XTaKgI/kjW5u4sRtxTvfcTRoca5KHUt9h0LTAJbR95H6GskaSJSRdbh0LvkiK07Z8bjzE87oqv7xHr9yOAHgBKiImIc2yNDBcU950RLq5Eo9UydTcgb40T7W/9j5eYIw/ACmHoY1hEcOnILGMBrz/8MeexyX0nnm8X5pjqCNwQ3zNY5kP01aFCNLhmU7K7PY1Egp9fYQazqqf5qISm4r6/26LkzEjefipupWEt+SJi4oN5D0eGNFOXn5fljRffn72oPzFmqfJyY89KKK2hxOq+0wm3C9+Xbhwv1Ig+3hhOuSXK0UL0hLEiQ4vfnvhpGFKI0YjrjovBGX3WmQeiAHXzi54rzYMMLrgcDsXxMGOyYPbInBb7hi5X1rIFMOsNpskQKGhjj4gEnAICumHTYRaUEcOg5c8XXr9NScHFUPAOs3A4gGGJmDnYbXY6yNunN4yieNZ6obkSJopHK1ADLrxhdxdnVUyhA7yXlMUc4YgCv2tv8pedLLcEVyrZl2Gdg4aJdI28xa6qdBwjJ6COKly0zNd7GeJY8yxzsOE+dx2wiaSKqRFup+cR/GUIzbboymq07z9pewEN1CShEslcp5kIPJyWnBCCSyGol3QE4bYpfdq4e+RNOnqB7/Py72vZY13iHNUjPcfczo6f812ZpvTlUA3ZD9Fna5HH68wi7ocDqsflVUi8vPgc7GCcu303Rv/oqYoQNHdH0AmIqipwoHAzlK2zs4wEks0DCYrA93+TEDETN7WwH3dxWuTr1vPqwLfTOP8mKgZYNDXCnDmsBvL+/EZiHb1+WW6U4EcvMlRn/Tci9Py8RL2xK4HtjnHCdXl1zBjSw9LY3+DygmAuWj1Fz8blzGd5Ut3ePS8k3Bw8Wgebae+z1X/gc/P2WQMB+4PcO5MahYXlspfVOjCo+QVASGbW/T32OXuEQTZ8di/XPZYS0tPrg2E3hvAFEOZjs7EpHDH8uso+/qHNe0hpDOAiF1pnqyIkce4/xrQRNRE1p24X4LVC/alguINffe1nhrgMCQgJjim1vNkGROXc13VhnqZkoYBdzHFlDxWglWiNIe1TxzZbUVkFs0+qvE0hnTHf0+wdW5OdGPmeWqo/aa+qyhYp/sduu4a4mcSRwWISCmvdL3ySKSp3wcARjzcj/jaFZCS2BXqC18UfLX6IcKpGEAtpBD0mqil/r0IAdoG4mqmAgNpJ4SOrsdhcpDnweb/keq1K8fQoui6wSjvYfVfMp/haDyQccDrNcjBJHDUz7hTp/EIGEiK9MpvLPVJB7qTMJfRgQjviK4BxYZGgA8ig71L4RsGW1Ra+/Vg5i3bDKGl8uU9j0wwIMCgzDVmKe8th8VYT5IzJS6e/P4Dgo/6H+o5GcZhICsZ8zD5NRa9F1IeYQ1vi2HJrG0HNB+9i/kewL56FckMbgC0jSdy3iG9Peaqw9SCgxjSoMXQhgso4YFFq7eh0L5P+7gXfYhF1sZfx+cBgjuSEXCq4vZvP6mBKuAyjPvpvoWiOWy7ydpMmRreBhjreeIhsr/kRE5jp28/MyGtG2xH0cUhAqO8z1SJ+JOqjxAEG1g45tCpBRB87NtN4TwEHFGm7aw9AylJe6r9WgwdgcFhqjAFZ2Z/P3/3qHzwcIgYI2inviKW8hRHQVjcaIiREyLJDWTS4Tfp2pcBvNxbd5cajWQRoDSiXXsJ/MDY19Agj1agPn0mVFreGn4612Uf7OcPe5C2LgEn8yg2MgyMD5+hQILTmIJjD2412RJGzmTf5DyQb/DvX7f0wuUO9y97wUoMUP241QcXPqBibUwEWjKT0I6HQ4Zp6IQRPO7q0RWM+XyuWxJ8j3wMZCBuWVkEIO1ewPjR4Akyz2bFkwFRtLjVElE8PeCLqwKSh/eB4HKBm4cXEsI4tUO5KdMfR6cHBOBpnYqV+EhCsJkcjvEfgKV6E/c1S/QXSjcWVSiyX/EC/n78h2+DbgoXjfM2sfZq5J0yycWKdTVo7sv+LiS7cuHJJeeGmykINe3JbQncZcD9dF6xugaMQGE4EgwRjo91L7WB2yqUYLTcC5AdJm7FYMBWub+cmYJXxl5xd2E6LRstPAQuv2n3wiYPeyM99tQPLn5iVG2IOOUZhDAmEoIjEefc64u70RaAQ2pWIWv4jeu5ezoJSJpOX+l2HUO8Nj/j1JuJOgjISCiJEFdhv06qWczBjbwtfn3+k7cDOKrGX4sk9BQi7vf3HVmVJgZ796gF87IwCPszrOn8IBDRGBwKcycNOuIcMfs3T7l/cR4FlX61abTDzzH8E0Z+qmk5cFIxuSZoJcFZ1oeus+NDdIo1t2iBkKBCIEZBXCd4fCH4SPvETstzx6HmiVKS3/wtoeNlJqYDkC8NDQroazPQkuzZBFHlpUlt9TB5aU6V3YPoREf6q+yUbdl58G7mzcM0E4OckwXtLGMPUwYovW/OVKJLJxBT+t0JFWZIh1j5XmNBBq2udEPqkHNYQVBtX8f3xYFB0kg04Di8paTLJKw8gBXrWLkv5x/1GCNdAXE+nlIXS0WHR16kwM3X+J0QNyQC+a5orFwnNKKI304daMrginr7lcvF08Aa1I53uWS1EiQLZ630KY94YOY6PFBaa97aGTe/SYJxXoiph0uBovXHTJ3Rrrx239A+LXRm+A6NHfBLjiL8Y05MVvu6XenJz5LwLgo/h0RyERxRiwMghYMgGmssVQ+BH7vf2zvVdMmU//vMwKgcu61OOE8Jp7lm+oZ9GpxHHzp0br7J+vI84eOHvBUzgSE90iHWF+BI3Lc+CuxMtrQrVQRxbZ2R7hufYslAn5tBDaSS+1QlEjlqQrn9xa00GzXooPLw1lZxlphqox3KFuJ3UVPFaj7IHGOntNMDVUmZrtmG/cbfDVXoiW00dBuL/NmcMGCXxxDOBkRBpmA97vQZ63sN742HqwkoxS3ZXIx8m+CskoZ9C043bDZ6CwrA588Wg0QbTkIi5hAD/lb/nQFxPiX3D94K3NSoTzkEwkxyqdnyaTteFNCCIqrX8IPQ8UxxJRSZ2OekR7t3dsH0baNC3eHVE5yl4C2tuGBXZ5xNPsNhccd3v9kGYvzo9KvuQppkq5UMuCweXVBNiSd4PiuevGgLMlgMvtAlm/UsskemsG+Dz3J+cVjM+qUqO4w+t0hsC2B4UwVAXKX/vqJkvOUHzvHvPaeUvPOULqJeR8Q5aa3ia0lnNMaciJQ8Y4rBnIjM2oP/LCrrDhtJmB7UAdHPxNb6R8sotjEN/VbFzY88sY0v/bdnMd3Sm58XQk4wUdQ0ybq36rDJGqbabZCcJapYzhjTj3IO9N6PSdqMa7POMgHNNI0PpCaXEa85wH86yU7ZGSQwEejYns0HTZW3vMUSY5RiUvQwX5YGDsZ9H6DhM6yCsYvmdOz2y5+wGhfl/fOXx4Fhp7cUcry0G1jP1EzzSpaU/IaBOruEP3GrRW93pkhhUntgnajjEM9FlLhbPOyr8uXUoEPakAE5WTzq37FTTH/KQj8Mi2OapLcCI0F+RDRjuvIshRda8v/GUQlAoH+2YWKiLPAp8y8v9K5Z2s6STfROv1fPEaFPaYdZAq3SolC2x8FOTQYiCkDgpFYG3BlFpz3/J2ylRLeqy0j+IgBeDarvIHP2GbSYvxaIz2b7V4hB+Pmr6ClF3FhEx3ql5+6imlSND2niFSrsYS1OT5TUaji1A8rxg8e0NWPtOW86TX4+sqHFJX1nvYPtglGkpp9RTYRfpa7lbuRNr6TGluUeN2cNJAArywWbDyW4GSsawSP29SVQa1vp3QJJa0YFTNq3yMvnUb3fYHwlH7eI1iQVBDeoypMUjWInspl6PJSBBZKr1qVAJVpyqKTPhL8FlZ/r12QxFfpRUnm0eQaN6iQ3HE9s1G9rMCmcwBAsrAmFFjav7QAn5j68YhUudltxeD2G27c/e7CPIErFvpcjwcrFAOM/Ye+Ui8faDw6X9te3BrYKrm+tINIAdYyzKkczfZk3RstTjFtZ49NB30wDGVwTnfjuB9qY1sPdXJxw7+DsCj+bCf/V/O/QNaaqroUoz3JZB3fpZpC+EzBeN65WQmEenQSwIzDxGdE4g5A7mZQwylCEEJnbfzyHrmIx1e5GFrZHT7K2rkbXAgslW88YveklemBVERy4ClnfzYn4ocnE1tONiHiroLQ86Ho3HWVlPwiOI9UOfHncmwzwzq+ORb5MmuL92a9+jNBeMQCRxeTpkuRSJ/731NEeBohcWREUCcvT9MP6bCPPAET4Bn/KueM7lsyAMC1iL+A1q1jkeyr1MGolRmRAr+iYxJskLSYjrQbknnw6FmfE0nDRtc5+3s2jf8XrA39P9pMduBQ38aSm8UX/Kc4CBQc60YSPruz5W0Q7zWNf3QiqvnUr5A0UrGhFdtJ45lo+Xg/yxib4XFQDeUF0b5749MVmJCiAIvX+hghHpjYUcTEsOZFjFy1bijBOZSFZ6tRThxJDVWx9gQn9N9HAsJuFut5K4VEthNaZV6OR3bq49eiw+kh/Z1ipN5JRoySGmqEi3NdQHVqjTOTKKearYU8P2QrkH7zQlt9NCl3qlMy2A8XevbYLWNXPtHHjZqp0gMlY00VIvjuskIRqFATNH+xl8Y2S0a/gt++HiK67yYOXCbmYijB+ss+RbgBF53YqaupWhENcKK8FU4Wnn2vhUvznmGj7eM4cfElkZnMNx3+re+dVWC3OAv3Im5a1TyclNMOiu3dU+NPCfNuR8yJO5wDW4E3cNV9evEoiD/Dg71jUK72Kim5FAJl3nV9/pgx/Iz0c8NtmUaMM/OQWzQA9fxn8DsDVUphZk2fvhtjO6hCN3SINbTFKznp0F3AIzNTnVC0H5m5X70MY0Kxba7ypwLD0h79tiTb4XDUKVZTol7mvS3aIvSXSqR4tSa/azF7VXy+DEYl8/IXF6baLk/3sNnD01+XfuN9zI+JXWxjg1/6WhVQwhKUQevlSskZ8pXKDiD7bEXXjxFc9p73jgSvdbi85P5LXwdC+IyOP83sRX7Rgt0xJdAFUhx4T8ho1zM0ALpbt7kvGTsvsO/QqQ6G9bd2meDvTq/ocWpmpeXBl8nZilAxOdptp4FBLgI6BeGTZRCSOfURdPBTOuroTePLgDwWXMpIJQ/qYXxy5ZgnAYlhk43NoBSCIqStrVMqGsEjgXl0OBPPeYdCuW36muxsfkqaWshkTJmaW3gNFB2b6bGWxIhWVXsKNReNOt9dZ4EsIE3u7dgi50BJT3tUdjG/WKoH1Yt5e6sUNbensfiXu8rYKVhJKsuEplYO/F2/wPc7aQlsmfguExIrHT9t62l1K2i+NyQOtKMRA16VjgFewHE1+ZruqEQHTICmA+qgUO+NZls1IWc/oteVKf284Hpy/HIDTZorJ/Bs4dvbeGpa5wLCKzhSLaKRtniXgR8kfkYdoZ2/sjIo33a6mDkTsJjp16AKsEKhqkw3no5IatjsOKg19E3d7lYX/QHpvSnvonM8oEontNbMH2iIAQbbaLWIJ4s9nhgQuFSWIEO6tN2YG16H1g2Ye1G92WTHU+IJQ4nD3v6cBHj3HmAgeLyZjOYcstg6QphLK1Uh5MwUjbu4XFxyzVkRP4qUsYgvpXX3HIuEPQTb3iXjXNEel6Swv/0kItNfSCsBid8FqWi0x4NO4GdF3vH+4VBmslgK/C4GGMb9a19hRHAoAS7LIkjFN4OpJ9BYt8UBbIAvuGmnZ3uN+jx9jzaBYWrW5OyPMqBzHVybFwbV7HsfuxFsm9ImeDf9qJ7bg6TLpP//UAM3M4tUdkp5ynkaizNK8sw0WBgrqzLkDH34VJpelJanMTNmK0BdjCTBslrRDEKiYNNquYdTYLKSdFrQ6BWKcO4J+dvlEjMm0Jb8wjg9iwWZcXr4YggD8qCoDNx7WGcjfFAz9jxyHngwMOa/IKFouUrELG+croBuJGAUwYeFifw3Xch7iTubySseKP2li1plLZFiGNL7doe31jbSw2ok6QN+hc5iZGA9BAscACpgOED1fkdeg0pLEmHjmGW9T33syNDIR2mh3KWyhxfhwBoLGkbsYGAHnVq2ImXYn8FmUc3oUWb37sLt1iNU428UZMwEWW9cB3Gs73Vf3t81NFcKT3dU2LaVDYXyKY3Bs3/dzwcyP8N/iiR0YduBDOaqA5U2c84aFYSwFcjxcWvnMkQL1n4q0iH2BRzn45k1c+z7Xo+cdvYy10+THMjt87j3T+cV2jFgKzAwokINItWcnZ3Z8r3r35+5YJRCHhaA1JW+PX64xUYW5WFzr/xd/xWxdOnKIN/cZZphenKua1PHrBtC5z4riDqyb746YAWOpn8CPkOQt2vt92G+DFW3pNKIb9DFinBGZgjXk7WB/FmfI5h+YkL28tvhHKNA5XY8AgdSu7Kj+Pvm+jcgKPfJru2DOixdVijNifmoIiGuO8MubOzelKcdLJpyfRR3KwA0gQvFhQfKYb0fGCtlNFY4yN3c54nZdVGtv7TBzydxGvNIeQQD94ujqn1gZOwCGKzzyEc199CUV1xKrSyJy6nAqPVV5Kx4Vq7GaqLVnV3/WXHbYo+qMkU4VNhRCiMDchjYnSQUAwih4Dk+cY0GmMsd4b/jVCegV6+LYPAv/ET2OODQqGVvoNvvz45h5RQvkNOyzlS/mGVdzJWakgkrbE5gAH3Wa3WGl74sSnyjSsvEoQVQFvkeSmbFNrE39S+5at9oRbD3nLG2C+bqLg+kFMWWTnHD9L5pGu9lN6UdobLzGe6AQDZpcIXfq3JZX4O6XVTCDGDm9utoHZftPoF7s6xWwv97vbmsM/VacB0fLvBSS4ivB5RRLFFVY7Dh3JAgusFotyIVoAlx80mF+KpBGJuRiGSqTfSLfzpTzar47HG/o2iNqEJTQ+g5fB9V5Eged93i17yfha5Zmj4t6QT2efp3HPXpZCFSCnOIPdb4gAl0t2/J/SLZqSEEerk0/xqs6kVN8T9OXeX+zw6qc+FL2A2QD01a3mgDDebluqgDymJ2ZaPNAtK64UwbJW5NX5JPgMMwqMEeHgqm8f8a0CbWxMiAwta4286JrqzImodwiqHqh3vrhnrnEz9CcQ1ApwDxA63vg+rVQDnIdK5AKRbW5daauina7R/VgPPBkwbR9/OYAsEnXk/7u8SXW7MjS/lP/LMwAzVcJrUZJyCEzdrhAQmYvCa980ullnGDEeYe4wuAM4Mk6wNRLmd9weU67kghBoCcueZ+bKrv+3dOmIoKSP0CxsmKslawq1Ojvp/43kRcvPJlSH4VFK700pXYzG0GKFWNzmQzybcpeHWfWtYTCh7RO34GwZn9QV1BKGm1f2lFzkJzCkEwnIIEBcO41TYJOkl1/aeNsFDKSiBNRTXocwEnzIuDwjN6F9iL7ctMS29raG+E+z+uJ65pCUFu6vtBU5QMdDpvdkqnTV7XaWS2La3rrDskcScm1FO+l6HH6pj1b1bb92rvb4JXGyVA8jIc3f23cv8l0e0HwKjhW+2zIEDly6hxCtEhi2Lt2A6AQIz2iy6NpnP/VhFTGvIC5zb3LF8Y5tXPp36M9OMBxv2uVhbfNJrk+J9RhFIL/tAo+Qdagcmf/ACTKEal3J1Sv5iOrV8ivJqJrMFHQtefHcyQKH5C/8pYrQUoDn6f00myfbZwJtleO0P88M4gG93NqHmJX5CKiWGbTNxqDsh2n93Dun8UaN1E4FOrCIpxHPWzZd/z0Re4H+Dg30MyAb0ooMGUAU2QscmK1EYf8en3PRvIK0ykgosH/qrNNguVGHSgknu6WtRscBotbPh3jNKMkZlKEcILS/R4cStWtumQ3Yum9NxCC+XOJGSocdxKzocjauzoIEGlFeU66Ju+1EK1AOVvGsDBx8WB/S0BvRwXsSTVKoYZAFuQPYbGAADjOs6yflYr2uek54QXhudPbvVwxkJk5umpSn/gVvbLX97ej9ekHtbnFPfMAGXYCu5C7doMuiLu6X3YQfwkHZ3xeN34ogOiaJJHkvVCPH1tejPKT/Yh2re7q4DQDll5WCm4Ou9bZIG8FqQCDvXtPqSFgS0J/pgpt29EujP7vKrioEBfgBdwO0+1ce+OTHQomBYOEFN9ksOeJ5K15/Df3Mp1xD/fzDrB5eltZGjjyICk9VIYZcQW2iyhXDsYDKLBLJFPNBgPU3zagpFpCNKeT51nv0X8LYq8Oz9idKs/NLD32noguUB5+NKIMSGLis98i14KUKVIvKg75E1QybwtRcbFOfJxE6OyXvSlhFmYymn8q2eOBuhxdt+XeeNFHxAHa7aZ0DrR7rJI8kzhPVOcjydzuLqxsYBiq+ci15eabYfRdsOShljU+VIqOqmAWE+1JQ75rOQOZ7jAnkEqCg5hKuTkpcTUONsdXYce/tSzFO7NSvrTbX29eU9mo6T/Mcp8dpPmpAGc/eN9beEHlQ+lWxS74d5X12IIuCExfIKeQX2dgrB27NbhCc4jh4EkQ/HyydAF81MCodTjwX5g8kNzzWbQcsElQvj3+mdgOlxXF0zqmJzwt2mGBtQUbr3Ml83drtj0x7c4KWHYqLgHJAXjBJRIm0TAmIwoVZBO4+jhz2K1pagR1O8WN/kP4nHnIxyiq/inZ1M23iRVi4lVxP27v2whRhB4IgV8PWMn4SRQfhK141/2t63JUwHOW7yT1jfHgqM7oA+oeiVYzKooWpOPJLNa1AmUnMAVFq2xKcqNLEyIcT4grNTFQBfV91YVd1URTrW/875uLd3gCguHnUWZze0yIfBiQTrPPN6en0AUGgVUgtYGWyZ+SuoVpbT2WJ/SitYxX1Fkc1dUlB73ztDXFIYzdGb4g/d94I45sHkl0Zd/SYeNPdEwu6FcaBwYc/04lL4R9sN/2+7HuCqZQPW5fM50QaDTfMROMhH/F9sFHCC3ZrA3RdP8Ar4uKYFrV6tpcWm2I6aTDqjqXXcmtJUwDd+SrHlQCFKJEk4ZgOXpWyyf/FvNnOdu2ki1PqJWhHTDhCLvdT4XE5DjoYtCQP7a4NDu3nYq1kWSKa9SlYCIPaoxuK+EDYWwCYDm2pHKFMXc0+MzHFafssRTmi+p124RC7gQz6lJwMTJBTpJthgAYEXoe64OKaAgZ9HCoU7MQClaFKfIjlo+6DiGr3MY1JYSimCdRXF6+6+HmD/9rWxTVYm5wD8mc8F24FVhM3g/NEzt9ZsPbUg8sQHYlsq6UcgmJeR6uHWykw/Wn3/2KffbVigSB0m26BLEkw1x3pHDc3qAd7mTESqy6PrD9bLwLDL9qTS3LvuF/neh9cRgyeSKHlLvn2jhifaj0eWSmTkGjtXU3lVqPyArbDfLmTzg8ex7ndQv7w32snmuXu5vaN+BTFpKWnM8xdL45V6fbWDWxtqwAgwbRCQdUpjly7EpT9jcoNwTi+UmUlxjGymknU2ALpRbaIG6EVHXAZTgcfxIESiriDYIbLGEm7ju4eCEnlAtcbQxUimWnr5/vJ/auiGOmxljwT/VrFMzyDC+o3dieomYeFQ9oM4r/mLbI2J4uS5oubzYlIuX1EO2nSOl2A1862zlEcxcr0/CpvBoK03WLeFjrB6pOfSnKlk9CCXvHIW2Q3qQ5yOCI+z2ncmYe3FIFUieTd9QMQSeAExWeheoxUQE67WdDt61oGBT4ihsr+C715+WOIWdEvp91TIR5Kp+ml4XPgvdZcjsgxz6ebUzTFOjrXrZPrMYRb5GnFNCbaIwWvMVAJMlcU8QzXMrTWvxyckStWmq/wC2rmdGnxtxgisiMwcC7kCEKE0RSbnk8mw2fntL+jMXuudSCBPHLxVs1DlhTGT+0E7J+C0fXOn9froEAq79cszxUOwg50Mu6haXLeK3so+/YC/kh5fVAztjvw36Vc1tvrWk6gimk0bBX/OEoWkNotX+fddjVLaD4mSy4UxsmVlDHjhLM9JxSwsVvTzYUvWF9pXm2HlHlCtge4B6p8c+5UWCnf7VJiibD8f27qooBK67reVxSF+TFch6VjkGu2G4OkgOjMqinIbp3cs/cus40+3hw4sjhqpZ7M2Qo+yNsBUjBMi9nDHU7YQpcaKXw+16sCx+F712qtMrBXJ7Ts5ZFJf7ywllvYeYV1mh4PlHOeZOlqecjs82rtjLI0tQVhcXwe5QoZ93Qoi3coNA7crsFpdy2dwZpsrWUiyhJFITiD2+6N0zGt5jMXLNCtswvmv4td0n/Tai/21aF92INUeNfB+22L5B99nuj7p7MWLzH3MVC2eQK9FvOQlGAGGY4olKTKhCKedqIXBMcxC8V1qj28QaVhCKFhPLfbIFYaMT5OqswFCMn0atuezY73Ie4hFAp5j+pwy2bLeztBdbzkXxsqKarnCNUfHh8K4rIX6ZVxdFT6kA7NdvzP3Jop/Xc4CQjgxF+FESfGbsR4ru/jvU5JRwYEXCuSJHt6/7zfnhfsYv79aQF6CVfo9D4Be6iL4tPAyTc9bR9PEqRHQu0kPKLgNsLbWEm/GkOx7WUZhVqVC29NOEAUU3ZKfT5K7Sja8Z3MLnWm0eJaUJC0vrchvK3OzPFBmv1pQMzPhnKjdvYxTCqP85EgxtBV6IbBdXXX5qTlMWqeD/CId+Y00jqtnPZIa5s9Aro1pLbQjhDUoHGJ7SkkNiio5vwlQ9tZLBYs2TShH7NEaJVDXTb6kJ1F6ivpCIRFEVI9H7KHt2w5IFyaoNDWHr2bDj9xlbcqtpB8HgbLTD1F3QB/RNv0blYkNdSTSU0Rlneh/RsOJpAoXJcEFZo5WVfx4+LW2Ph9K9DgRM0/avoHkrsRPhceU46aFqfTOJXh5s888IsP/rqgVOHX4vM4lZ5wmEn8FyuPCCOrXYaQgrqZi7ZOHb5MFDJZJPevORw5F42GqFux2Jx4NGov6bq6jrCusUTAoKIz/xrJG52ANyN9H3ARLEsUrWlJ/v3iD4PY1cTf/PGF9VgCgfYYS1A9AKjcvYmy5LFH3JXrTPL9jTFKxXHtD3fz2dulm1gjcGdLTtzWDnLVV4Vy8nMraguuz2n8B6LK5/qvvKl5fUHvRMbF0Ee9HXbol6qhDyoZYgoNshrrc7Lx9flgdDOgJ598Q609BUBoL/1sYMoUfNxYvXwHjmd72gMUTszKlOTzzt96Fn2xrxSjZKCwfFG9ofPw0iNkrtYPMzDzM5/HKsb2hOXt8bbJRBaaNtPhQcbMmDTcjKbyivYWo5nf/IcidDgwY6RKH0CUq8qXsRyoXpWNV3LxbK0yWPRGO2FUQ9oYrUks3Yy0Zgq2ZvxSZSfmkP2aa1E9Kcj9ssFm0q2Vddlbo5QKBv8DHG/WfILaA/gqD2haYI2AlJVeF1ddK9eIvEspM/UHPCqECND3EZgahFFWET0GO2FIQ2gxX3Bvhwo8tfsu9+F1mN9PRfjwunTuCNqQLgz0LICMNcEnsdTYtorfkLSgr6rIfpUYS10SLaNbt2pxxeIqytSr9YQSNL7Vs/FaEotIZAy6TIl28eDS8PfueHGaPlZgb1bA8GE6d11eetEb/VukhbCPoi56VVjSwHTP9ROQa+mb6mxZg7Omgg2Jw/5dkmM337y9jfCtwvx4vfzTi60K/YmB48GxAzfxgO9KuqsApmZmgQ5eZzQiLUcWarqOD7M4gIgxv2I7OwLqjEdYgtxiAmkyLdI3ovFyC2QNCtIizSODXvX+SLyCdGv89VLAxc+/1irAXnnrCs2MIYebayeNcXeJgEXUQwPk3EA8g+1ARkQHuWkUMFpldSRWfyjx3nXQC48Ad3Q9/BWWBbXLEw/xAvEGiBoJG/K/679/GMTe8spHpf+pr/tmvEakr6ESiavFgADIQWO4Qm9VyAFi97jw9cUjuu/XHoaBjvLB0KIk9xznTOO/Ow2ZzGXi5kAri9TNCzP7ke59wptsYymtvF2eIxQgczsqe0+ixEa620lybF0VuTX3rdqevrLK+bwz+846gLC+8r00/CjXqzpxj8DW+GJt4FdY8g+ppYBY3YrTl92GBoWV9jEQtd2kAvOFpy8wJJnnRGHpMK4aHI1lqz7qezQKMdFrGn6PTqiTtke5QW2TanGp4enQwru9LwDn5spn2cIpjeltDqd00YEqr0AOZxRBIeuR0LzLqvEjpkQTFixWZzH+f5nbx7x3RJr29g/Glvvc94RPjGQmgG1yUue3wgXgBII7XI1w69b0diye9YTURffyzpWnOYHYsJQfJuXaZaIc1kcXEEREg54aO/RPyYOYy2YtpX63dDsd3LcnhJeIgkSS0yoQlR6Mo875rmrbBNXN9cbWJ+S9TltLa3jpBI454Pmm2ndO5A9uW+OdBSbtj7lslFYHElwivI9l2BGS4dcCJdyNOX98UaD4KuOv0c+qxZOw957bW3ltJVV10mVTwyKo8BLY9exGpZN+V207V1zrX/UJL5OnQacmSwJgHz9H4IOP7sdSYmRyVUKfEWsCbiW0CZwtfmZdGH6O2RJW1OAyxHzmp4+SR7An86mcv9+ZnqwHqCmvH/o2g6MCYCbA+KD952e77yuR1esuN9a56UU6SNYyBrdWXjjM2vmgp6306HKHkvWEINjLvGJKeN6oo3TVtr1RzGD7NvPYUptA9e9nFpRDZawn7GBmfIt/lLPJ22ozYXR+f0TkWPuo3AXXmserVBCe9SqlaCu72bik6vmeM1jySnHRPiE6XBFMzv3Iw5aaFo4t9H1KmdSGc7zEeRJr6L4qG6dr3daNbOKgZM5pxBk/7+eOO+QJixOrK8BLQy39cPz+dmM615Rf8Zx1pm/As1qU0FQAkBd/AxTA70gzce3idYJ4yUp8gDnnqXTyHarMBQZOmyzwS+H9YICbobDx6HwGqXytupdeE6vcqcrm4829Ij0mNTHIxar8YAx+3pfb6pQSnuQWi3l3YJNiKghTIb5A0Oue3RANqwicAMJPkaI8SxF8FSsHpKi7TIhx+8Y4OGfQPnG5T2abb9vVbvF1/xICPWacWfV4bw3ruCm/dbrax77POV/3wowSmtUt27oOfApckpWB/d9WcAnT0g83psUWU2ApVT+43yMPBPxe9u923AXSF6/TOTkx+bp0FXXHGtfOjLQnpzjWb/gUGhPQFkYTaCM+m8RTBk3NhtcdHX+x376/nFZlhv1bv9ttLkDTA2xlrrko1WGlXgUdWoxNHDIiu7772DDF4fMRkTdRumlvLq8QvUXvRefnBWZ6AQ0JAYg+GB92D2eR328CUcVoNapfmZxLJH56sec2Yo3+MVhASjdX8qDgBNcjhrS9dTC3pfGMb1ERirzqZhZXE7ruhEuJJPUktbTh/gu0yW2T8H2ydHOgAVYpn/LlUj/lB7XjXsJ2ujAyIhrbi8YKE8V8lB0mfCOYA2ZH3tFuSsZaO81NE0eGHLATbIoTkKF8kGa0PupvIIR/tyDwYKkqH51VUttTrtDrLeO/sEbpaJLERi4qB3lvmP06M2DzHkAWghLda54e6X8VaSiXkizlTeg9FuB9vtzNob5Rvuhg7Qx5MjUVA8+GXKVKBax5grwQlvwIk6fBQ5E/t3TdHXNnvX0z7Vlzh5/7UF8DAdwk6yb6wjkjHT6wo/10TRZJ4eGJa4nFg1s7unfvXSzPw/4WNXO4Hb76qFHozFsGaqEcJei2CumCObumjFiFgJ4jHxPXsxy9c8Or2aG9BTa3ob5C1gFHtN1kUVc0T7IUnwoNG8KE5PQKH3fVsa0kcnmucLxQ7kn/CiEnZOMfhwYF1Phw7NMzZ+9NFK8cS2CTuh5l6nNsB558rGKF8IDcj0wnKEmK6FcAX+mvVEyCmzUmQ/sUszrQju8G2/KQhTOHZI4O4DAFqXLrwWrqfyaafOe1vReWau0WuVR8VpWrE//NflxBtOTewf1QJwvlkrb2OuE31qY7x/8IcRB/Xyb4zBc9Ahz2GM8jxQ2Sa4HLSltLGKAz3E3OmtTdkY62hGh+4VPnsTH3LGVxW0yxURcP6Wk8dbb45mmGbhQmrKca2whzk8YNN8CqRdzzWjLJxPM/YElWuX2uJxcXkjLjEwezta8yhgeAs+3ip/Q==
Implementation mit Koroutinen
Implementieren Sie die Klasse DelayedBuffer mit Hilfe von Koroutinen (und ggf. asyncio.Queues).
MTAwMDAw:o6wiCi1o/f+g6ujtYkoxCKIOEXDu93eQ11BYnRpofZQ=:KVhYwkCdn65ETNpD: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