Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:126691 X-Original-To: internals@lists.php.net Delivered-To: internals@lists.php.net Received: from php-smtp4.php.net (php-smtp4.php.net [45.112.84.5]) by qa.php.net (Postfix) with ESMTPS id ACADF1A00BC for ; Mon, 10 Mar 2025 11:20:42 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=php.net; s=mail; t=1741605488; bh=AoWoQ26Av1WIzwCklHINf98wVRwbalbWpgL2rcSM06c=; h=From:Subject:Date:References:To:In-Reply-To:From; b=k7XTJ4evragUUzePTGF5EkJ/ClD4Asd3KktL9ixtn+NRrTfRjPlyAmtm73Mg/p1OW i1XM3riDQX7Wq24c9uJEG/5BJ6eEMVQEK0p4n1NRDjijt9lwFtaY3Wbzo6cnrHLx8g wXOv80D+NP41o7SC6QL4sKXcSuVL5Dadheirh2Tu0gASNL6iHyz1DmW788jmJZ1yx1 J23iesYJ+MCv3aesRWVx9Y/JEp1K0sbgDKOqXw0D6Jr8pDqfe6qa3J2aH7Y/U79qCN B2RE1nYc7YM3/pO9+8madENk1V6HIQPcHPIPWrEBqrLtbQL1punuyG3uMEvl6VJkN/ DGvfdDbLu6wHA== Received: from php-smtp4.php.net (localhost [127.0.0.1]) by php-smtp4.php.net (Postfix) with ESMTP id 4F146180034 for ; Mon, 10 Mar 2025 11:18:07 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 4.0.0 (2022-12-13) on php-smtp4.php.net X-Spam-Level: X-Spam-Status: No, score=-1.2 required=5.0 tests=BAYES_50,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,DMARC_PASS,FREEMAIL_FROM, RCVD_IN_DNSWL_NONE,RCVD_IN_MSPIKE_H2,SPF_HELO_NONE,SPF_PASS autolearn=no autolearn_force=no version=4.0.0 X-Spam-Virus: No X-Envelope-From: Received: from mail-ed1-f50.google.com (mail-ed1-f50.google.com [209.85.208.50]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by php-smtp4.php.net (Postfix) with ESMTPS for ; Mon, 10 Mar 2025 11:18:07 +0000 (UTC) Received: by mail-ed1-f50.google.com with SMTP id 4fb4d7f45d1cf-5e535e6739bso6414538a12.1 for ; Mon, 10 Mar 2025 04:20:41 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1741605640; x=1742210440; darn=lists.php.net; h=message-id:in-reply-to:to:references:date:subject:mime-version :content-transfer-encoding:from:from:to:cc:subject:date:message-id :reply-to; bh=AoWoQ26Av1WIzwCklHINf98wVRwbalbWpgL2rcSM06c=; b=Ef7bs2dXYit3m9ICUTP0XkSFqY1IztvlKplqU0wkm3a4q2iaFKusl1qhQnVWekwqyU j/OxfIJIPcaxKMg+ohfmljeJ36LPttVWfhZcNZEKEIgskc2xzo16bDN5rPcxVOut/1c6 cHMOHAOgYp+bl4avLVRF3otPjsvtK0EdzxSQ8q/ATWeAX9My0E8nEBn9IHeMj+qRigAN tRbNmZttdt0bmA8j+RQ2vcBBXVmNfYRAl4BZrKgnKlCCuAybHYqrqKX5+fc9xLiX3MkD sMw9yvuyDvXrA2O2mZdJUI43h8P2+UnGqy5H5mlanjOQEasIsn7g//0+tFdB/fxvYb80 5QWw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1741605640; x=1742210440; h=message-id:in-reply-to:to:references:date:subject:mime-version :content-transfer-encoding:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=AoWoQ26Av1WIzwCklHINf98wVRwbalbWpgL2rcSM06c=; b=ubmWyZZbeOs2yvP0R62015zN9feQ7lvQAl9lvc4Slwr3poAGyvKuQR3fKD1avYsP/i 6U4tD/KkuAxK7reKZXbb9dW/aBj8+ZIFV8mSH4/z3sMm5WHOkjZicTDNEuImdRTM5HuT TqN49786/7SGfRHZgLnX70BPo61gBIN/TsGtVUcyy76D1naDOjk/lSgnhFAcg0KF4j+h TUU89Qqw9sKa2n/Wo/FSz2VElLfQw19Ksnr3sq0YW+R56QbqlZhNSl6Hvei1st/Hz/JT In/sVSFxIwtXQA+JhaJ4+aHnZrcdpJnFkRB+mynH3ptWtGIZ47v7glocgxMhbF+kExAo WXnw== X-Gm-Message-State: AOJu0YzCVGvrBgi3WH9nylkFMWaDDs68OR7F1IGy2myxcpSnvdhq40cn rnNUzQybDXI/AVNEmeM/b0og2qMLaDo1GASPYdUvrpxoy8BiHMrrE74f0A== X-Gm-Gg: ASbGnctydQX7p7o/nLrtmMgsvqcNDXXKAE5MFTSbjGxQVNQMlbPhwJz2VcUhiC6xjHD FQe9f2iSo+qBlSP2jMP+MRfW9oz02JGMgIwNgUxIkWhX5Uik9wC0c1FT/srwxXolq27Z0Dg2m3A lw4kupGcDuozXPRw9dFL0yCvml1a7kEZS1p7mZfi6TCJnhnydcYhwCys7RdmVK+hrJETxoeaPEA Lu8L9ovAmRj1SA1HhuNUnyY4GcD8Sh9487anwG6UeDeLQABGPJ6mgH4UpsY0Ljg7LevEmufhJ82 Sk6jPN+35ezq3fo7dI0aKuTeaO0PvDBMN6jBh/ulLuJQEok8CxKOZQkoDG6EbYLd5xYPavJ4dVL asxjMYvwVQ+NkQWtGo3bUyxNg0mfWBzNILtcDJ9nghJ6K43hX90jUVoo= X-Google-Smtp-Source: AGHT+IE6gOwU2qB/rEPqaKJRgAfPIXXJJhfg8iiiPoWSyLI/4cVDUhOkCscMsxUz9d9Enb5Gdp2Zow== X-Received: by 2002:a05:6402:2683:b0:5db:f26d:fff1 with SMTP id 4fb4d7f45d1cf-5e5e248ff31mr10983287a12.21.1741605639532; Mon, 10 Mar 2025 04:20:39 -0700 (PDT) Received: from smtpclient.apple (luna-7e8e7de843ec2ac10000f.net.as198747.daniil.it. [2a0e:97c0:38f:0:1ca2:ce34:8ed7:e8e7]) by smtp.gmail.com with ESMTPSA id 4fb4d7f45d1cf-5e5c766a194sm6695153a12.59.2025.03.10.04.20.38 for (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Mon, 10 Mar 2025 04:20:39 -0700 (PDT) Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Precedence: bulk list-help: list-post: List-Id: internals.lists.php.net x-ms-reactions: disallow Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3826.400.131.1.6\)) Subject: Re: [PHP-DEV] PHP True Async RFC Date: Mon, 10 Mar 2025 12:20:28 +0100 References: <08c8ad0b-e8f4-46e3-99f0-b80748d40b89@app.fastmail.com> <07973EAE-2D83-47A8-8FA0-84286C77C02B@rwec.co.uk> <48d66433-3ae9-4895-8361-7c81a0a3670d@app.fastmail.com> <8599eb8b-d4a3-4cb8-899a-25b134e0d64d@gmail.com> <74c4c726-63aa-44e0-84c9-840e13a65a4f@gmail.com> <77DC5F50-531D-49E8-8BE2-504A19CB5FFD@rwec.co.uk> <676e36e4-0b84-4d8c-b3db-2998831cd79d@gmail.com> <510B8EF1-9D07-41A8-9EA0-7D99CF7BFC91@rwec.co.uk> <4690cff0-7a48-4fe0-8310-688be253f976@gmail.com> <4871b2e4-353e-424f-92b9-7e2bb753bafa@gmail.com> <7D224BD3-2FF7-45E8-8D90-C9AEDC80DD4F@gmail.com> To: internals@lists.php.net In-Reply-To: Message-ID: <882C619B-E41C-4B73-AC95-10046B99D4DD@gmail.com> X-Mailer: Apple Mail (2.3826.400.131.1.6) From: daniil.gentili@gmail.com (Daniil Gentili) >=20 > Yeah, this is a Watcher, a periodic function that is called to clean = up or check something. Yes, it=E2=80=99s a very specific pattern. And of = course, the Watcher belongs to the service. If the service is destroyed, = the Watcher should also be stopped. It=E2=80=99s a Async\Interval, but it behaves entirely like a background = fiber (and it can be implemented using a background fiber as well): what = I mean is, it can be treated in the same way as a background fiber, = because it=E2=80=99s an background task that can be spawned by the = library in any method: if await_all was used during construction but not = during destruction, it would cause a deadlock (because it would wait for = an uncontrolled background task when exiting the block, according the = proposed functionality of wait_all). Regards, Daniil Gentili.