<div dir="ltr"><div class="gmail_default" style="font-family:monospace,monospace"><span style="font-family:arial,sans-serif">On Wed, Oct 18, 2017 at 10:30 PM, Serhiy Storchaka </span><span dir="ltr" style="font-family:arial,sans-serif"><<a href="mailto:storchaka@gmail.com" target="_blank">storchaka@gmail.com</a>></span><span style="font-family:arial,sans-serif"> wrote:</span><br></div><div class="gmail_extra"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">18.10.17 22:21, Koos Zevenhoven пише:<span class=""><br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
​Nice! Though I'd really like a general ​solution that other code can easily adopt, even third-party extension libraries.<br>
</blockquote>
<br></span>
What is the more general solution? For interrupting C code you need to check signals manually, either in every loop, or in every iterator. It seems to me that the number of loops is larger than the number of iterators.<div class="HOEnZb"><div class="h5"><br></div></div></blockquote><div><br></div><div class="gmail_default" style="font-family:monospace,monospace">​Sorry, I missed this email earlier. </div><div class="gmail_default" style="font-family:monospace,monospace"><br></div><div class="gmail_default" style="font-family:monospace,monospace">Maybe a macro like Py_MAKE_THIS_LOOP_BREAKABLE_FOR_ME_PLEASE that you could insert wherever you think the code might be spending some time without calling any Python code. One could use it rather carelessly, at least more so than refcounts. Something like the macro you wrote, except that it would take care of the whole thing and not just the counting.</div><div class="gmail_default" style="font-family:monospace,monospace"><br></div><div class="gmail_default" style="font-family:monospace,monospace">-- Koos</div></div><div><br></div>-- <br><div class="gmail_signature" data-smartmail="gmail_signature">+ Koos Zevenhoven + <a href="http://twitter.com/k7hoven" target="_blank">http://twitter.com/k7hoven</a> +</div>
</div></div>