
Anthony Williams wrote:
Howard Hinnant <howard.hinnant@gmail.com> writes:
Here's an interesting read on the subject:
http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2455.pdf
For those of you not familiar with the language of standardization, this is an official letter from the C committee to the C++ committee saying: "Thank you for removing cancellation. Now we want you to promise that you will not even discuss bringing it back."
I just spotted that in the mailing. Ouch. I know we removed cancellation so we could make progress on other stuff, but I really think we ought to bring it back.
One of the key things people have said to me when I have mentioned that we're standardizing a thread library for C++ is "does that include cancellation?" Everyone I've spoken to about it has been very glad the answer was "yes."
I've added cancellation to the boost thread library (though currently this_thread::cancellation_point is the only cancellation point on pthreads --- something I intend to fix), and I don't intend to remove it.
I think Boost will perform a valuable service to the community if we develop successful cancellation extensions. The name, however, is very contentious, particularly among the POSIX community. It appears to me that any C++ language or library use of the name "cancellation" causes the POSIX community to try to derail all further progress, regardless of technical merit or existing practice. I strongly suggest we use the name "interruption". That appears to be much more acceptable. --Beman