Re: alternative extension: php-sm-curl

Michael via curl-and-php <[email protected]> Wed, 29 Jul 2026 13:57:00 +0500
Newsgroups gmane.comp.web.curl.php
Message-ID <CAMVeLLJQF4vZH+L2E7mpQFEHVQgmqAhjD9xBKs2r2OymUO9iBg@mail.gmail.com>
--===============2887678973325574444==
Content-Type: multipart/alternative; boundary="000000000000d310e50657bc2ad9"

--000000000000d310e50657bc2ad9
Content-Type: text/plain; charset="UTF-8"

>
>
> I've been a c-ares maintainer for twenty years and it has been
> (optionally)
> used in curl for just as long. I don't understand what you're saying, but
> c-ares is not using any extra threads (the way curl uses it) but is
> instead
> entirely non-blocking and used in the same thread.
>
> this says the reverse about threading:
https://github.com/c-ares/c-ares/blob/589b5887d47736e5b70a1fddaf9bf90297adde65/src/lib/config-win32.h#L241

also i saw event/ meaning "passive" model, i saw locks like here:
https://github.com/c-ares/c-ares/blob/589b5887d47736e5b70a1fddaf9bf90297adde65/src/lib/event/ares_event_win32.c#L282

locks arent needed for cooperative execution because it happens
in a single thread - its all mutually exclusive. so i concluded it uses
threads.

I'm not aware of any current bugs in that area, but there's always a risk
> there's someting else. If you can reproduce with something smaller than a
> full
> PHP then submit an issue and we can work on it!
>
>
yes, in the new copy ive downloaded the _destroy() function is completely
different.

"full PHP" is not needed btw, my extensions build outside, out of PHP
source - along with it,
the build is simplified this way, a single build script is enough, though
you would need
either PHP source or a set of PHP headers they call "SDK", of course, to
run the thing
you would need a compatible binary version, heres the build description:
https://codeberg.org/determin1st/php-sm-test

i've put CURLMOPT_QUICK_EXIT = 1 as a default option and will test it later,
when the whole thing will work..

--000000000000d310e50657bc2ad9
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><div class=3D"gmail_quote gmail_quote_container"><blockquo=
te class=3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8ex;border-left:1px =
solid rgb(204,204,204);padding-left:1ex"><br>
I&#39;ve been a c-ares maintainer for twenty years and it has been (optiona=
lly) <br>
used in curl for just as long. I don&#39;t understand what you&#39;re sayin=
g, but <br>
c-ares is not using any extra threads (the way curl uses it) but is instead=
 <br>
entirely non-blocking and used in the same thread.<br>
<br></blockquote><div>this says the reverse=C2=A0<span style=3D"color:initi=
al">about threading:</span><span style=3D"color:initial">=C2=A0<a href=3D"h=
ttps://github.com/c-ares/c-ares/blob/589b5887d47736e5b70a1fddaf9bf90297adde=
65/src/lib/config-win32.h#L241">https://github.com/c-ares/c-ares/blob/589b5=
887d47736e5b70a1fddaf9bf90297adde65/src/lib/config-win32.h#L241</a></span><=
/div><div><br></div><div>also i saw event/ meaning &quot;passive&quot; mode=
l, i saw locks like here:=C2=A0<a href=3D"https://github.com/c-ares/c-ares/=
blob/589b5887d47736e5b70a1fddaf9bf90297adde65/src/lib/event/ares_event_win3=
2.c#L282">https://github.com/c-ares/c-ares/blob/589b5887d47736e5b70a1fddaf9=
bf90297adde65/src/lib/event/ares_event_win32.c#L282</a></div><div><br></div=
><div>locks arent=C2=A0needed for cooperative execution because it happens<=
/div><div>in a single thread -=C2=A0its<span style=3D"color:initial"> all m=
utually exclusive.=C2=A0</span><span style=3D"color:initial">so i concluded=
 it uses threads.</span></div><div><span style=3D"color:initial"></span></d=
iv><div><br></div><blockquote class=3D"gmail_quote" style=3D"margin:0px 0px=
 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
I&#39;m not aware of any current bugs in that area, but there&#39;s always =
a risk <br>
there&#39;s someting else. If you can reproduce with something smaller than=
 a full <br>
PHP then submit an issue and we can work on it!<br><br></blockquote><div><b=
r></div><div>yes, in the new copy ive downloaded the _destroy() function is=
 completely different.</div><div><br></div><div>&quot;full PHP&quot; is not=
 needed btw, my extensions build outside, out of PHP source - along with it=
,</div><div>the build is simplified this way, a single build script is enou=
gh, though you would need</div><div>either PHP source or a set of PHP heade=
rs they call &quot;SDK&quot;, of course, to run the thing</div><div>you wou=
ld need a compatible binary version, heres the build description:</div><div=
><a href=3D"https://codeberg.org/determin1st/php-sm-test">https://codeberg.=
org/determin1st/php-sm-test</a></div><div><br></div><div>i&#39;ve put CURLM=
OPT_QUICK_EXIT =3D 1 as a default option and will test it later,</div><div>=
when the whole thing will work..</div><div><br></div><div><br></div><div><b=
r></div><div><br></div><div>=C2=A0</div></div></div>

--000000000000d310e50657bc2ad9--

--===============2887678973325574444==
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

-- 
curl-and-php mailing list
[email protected]
https://lists.haxx.se/mailman/listinfo/curl-and-php

--===============2887678973325574444==--