Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.lang.c++ > #120869
| From | "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> |
|---|---|
| Newsgroups | comp.lang.c++ |
| Subject | Re: "Safe C++ is A new Proposal to Make C++ Memory-Safe" |
| Date | 2024-11-08 18:15 -0800 |
| Organization | A noiseless patient Spider |
| Message-ID | <vgmgkb$3epko$2@dont-email.me> (permalink) |
| References | (17 earlier) <7497261e174d4bf72a9f049a4ca733da97e47c2b.camel@gmail.com> <vgm58c$3d2as$2@dont-email.me> <2416178fd919ab84364785af95abbb9d1623f98a.camel@gmail.com> <vgm7i1$3dhh7$2@dont-email.me> <7b15ad076f2ce8bae6b194057f8215ee634d6c2a.camel@gmail.com> |
On 11/8/2024 4:19 PM, wij wrote:
> On Fri, 2024-11-08 at 15:40 -0800, Chris M. Thomasson wrote:
>> On 11/8/2024 3:13 PM, wij wrote:
>>> On Fri, 2024-11-08 at 15:01 -0800, Chris M. Thomasson wrote:
>>>> On 11/8/2024 2:58 PM, wij wrote:
>>>>> On Fri, 2024-11-08 at 14:39 -0800, Chris M. Thomasson wrote:
>>>>>> On 11/8/2024 2:35 PM, wij wrote:
>>>>>>> On Fri, 2024-11-08 at 14:09 -0800, Chris M. Thomasson wrote:
>>>>>>>> On 11/8/2024 2:02 PM, wij wrote:
>>>>>>>>> On Fri, 2024-11-08 at 13:27 -0800, Chris M. Thomasson wrote:
>>>>>>>>>> On 11/8/2024 1:18 PM, wij wrote:
>>>>>>>>>>> On Fri, 2024-11-08 at 12:46 -0800, Chris M. Thomasson wrote:
>>>>>>>>>>>> On 11/8/2024 6:54 AM, Muttley@DastartdlyHQ.org wrote:
>>>>>>>>>>>>> On Fri, 08 Nov 2024 14:48:16 GMT
>>>>>>>>>>>>> scott@slp53.sl.home (Scott Lurndal) boring babbled:
>>>>>>>>>>>>>> Lynn McGuire <lynnmcguire5@gmail.com> writes:
>>>>>>>>>>>>>>> On 10/30/2024 11:56 AM, jseigh wrote:
>>>>>>>>>>>>>>>> On 10/28/24 12:25, jseigh wrote:
>>>>>>>>>>>>>>>> ...
>>>>>>>>>>>>>>>>> The whole nullable pointer thing was a unrelated spin off of a
>>>>>>>>>>>>>>>>> solution I did for addressing pointer provenance as discussed in
>>>>>>>>>>>>>>>>> https://lwn.net/Articles/993484/ in the comments.
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> The nullable pointer solution I proposed is not super clear
>>>>>>>>>>>>>>>>> as it depends on behavior not presently in c++ so hard to
>>>>>>>>>>>>>>>>> show how the solution would work.
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> At any rate, I don't have problems with nullable pointers or
>>>>>>>>>>>>>>>>> dealing with pointer provenance, and I don't have spare
>>>>>>>>>>>>>>>>> cycles to implement solutions for the latter, solutions I
>>>>>>>>>>>>>>>>> don't need.
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> I worked on this some more so I've gotten a better idea of
>>>>>>>>>>>>>>>> what they mean by pointer provenance. I don't think will
>>>>>>>>>>>>>>>> solve all the issues they think it will. I can come up
>>>>>>>>>>>>>>>> with some pretty trivial examples that will break their
>>>>>>>>>>>>>>>> proposed solutions. I think they are unicorn hunting here.
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> One of the issues they brought up is the ABA problem. Yet
>>>>>>>>>>>>>>>> C/C++ has abjectly refused to support 50 year old hardware
>>>>>>>>>>>>>>>> features that would help for some ABA issues. Kind of hard
>>>>>>>>>>>>>>>> to take the pointer provenance problem seriously.
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> Joe Seigh
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> What is the ABA problem ?
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> Lynn
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>> https://en.wikipedia.org/wiki/ABA_problem
>>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>> Why's it a problem? Its why mutexes exist. Why would anyone expect non
>>>>>>>>>>>>> synchronised RW memory access to work? The exact same problem occurs
>>>>>>>>>>>>> in databases with dirty reads.
>>>>>>>>>>>>
>>>>>>>>>>>> Humm... Not sure what to make of that comment. Have you ever
>>>>>>>>>>>> experimented with lock-free algorithms?
>>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> Why is it on topic?
>>>>>>>>>>>
>>>>>>>>>>> If "lock-free algorithms" is on topic, why just turn off multi-tasking?
>>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> I am not exactly sure what you mean by your question wrt "why just turn
>>>>>>>>>> off multi-tasking"? Just use a single thread in your program?
>>>>>>>>>
>>>>>>>>> Yes, early threads are actually a single thread, where lock is not necessary.
>>>>>>>>
>>>>>>>> I am not sure what you mean by "early threads". Can you clarify a bit?
>>>>>>>> Thanks.
>>>>>>>
>>>>>>> By early, I mean in DOS days. There was also such thread in Linux, I think it
>>>>>>> is called Cooperative multitasking https://en.wikipedia.org/wiki/Cooperative_multitasking
>>>>>>>
>>>>>>>>> This remind me of a problem of the 'language'. Why we can't say:
>>>>>>>>>
>>>>>>>>> thread void f(Arg arg1); // 'thread' is keyword
>>>>>>>>>
>>>>>>>>> instead of lots of "weird" syntax, if we want to talk about "language"?
>>>>>>>>
>>>>>>>> C++ threading is fairly "flexible", well, imho. Wrt C11 threads its akin
>>>>>>>> to PThreads. Well, minus the fine grain control we have wrt the "newer"
>>>>>>>> standards... C++/C 11 and such. The DWCAS issue aside for a moment, its
>>>>>>>> not all that bad.
>>>>>>>>
>>>>>>>
>>>>>>> If so, use pthread to invent what you want, in stead of too many 'weird' modifications.
>>>>>>> All are confined in your source. it should be easier to manage and less work and errors.
>>>>>>>
>>>>>>
>>>>>> I used to use Pthreads all the time, and resort to asm for the lock-free
>>>>>> bits... They were for pre C/C++11 impls. The damn DWCAS issue is
>>>>>> annoying to say the least!
>>>>>
>>>>> Sound like a good reason to invent your own Thread class.
>>>>> At least, you will know every thing more concrete.
>>>>>
>>>>
>>>> Well, wrt a thread class, just be sure to avoid calling into the thread
>>>> logic before the ctor of your thread class is 100% completed. I have had
>>>> to debug some really nasty bugs that dealt with that specific scenario.
>>>> Yikes!
>>>
>>> I need examples to understand what you mean. I have not touched thread issues for many years
>>> , but hope I can help.
>>>
>>
>> iirc, it was a base class that called its pure virtual thread entry
>> function _before_ its derived class had a chance to fully complete its
>> ctor. It's been a while since I have encountered this nasty scenario.
>> Thank god.
>
> class BaseThread {
> public:
> BaseThread(Func func);
> virtual ~BaseThread();
> };
>
> class Thread : BaseThread {
> public:
> Thread(Func func) {
> // init vars.
> ::pthread_create(...func...); // the last line
> };
> // ....
> }
You just have to make sure that the thread is created after class Thread
is ready for it. I have had to debug horror shows with threads created
in ctors before...
> The thread should be started in Thread (not in BaseThread), if I guess what you mean correctly.
Basically, the general rule is that a thread should be started _after_
everything it needs to use has been fully initialized.
Back to comp.lang.c++ | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
"Safe C++ is A new Proposal to Make C++ Memory-Safe" Lynn McGuire <lynnmcguire5@gmail.com> - 2024-10-08 20:40 -0500
Re: "Safe C++ is A new Proposal to Make C++ Memory-Safe" Michael S <already5chosen@yahoo.com> - 2024-10-09 14:14 +0300
Re: "Safe C++ is A new Proposal to Make C++ Memory-Safe" Lynn McGuire <lynnmcguire5@gmail.com> - 2024-10-09 15:02 -0500
Re: "Safe C++ is A new Proposal to Make C++ Memory-Safe" Michael S <already5chosen@yahoo.com> - 2024-10-09 23:46 +0300
Re: "Safe C++ is A new Proposal to Make C++ Memory-Safe" Muttley@DastartdlyHQ.org - 2024-10-10 08:34 +0000
Re: "Safe C++ is A new Proposal to Make C++ Memory-Safe" Michael S <already5chosen@yahoo.com> - 2024-10-10 12:51 +0300
Re: "Safe C++ is A new Proposal to Make C++ Memory-Safe" Muttley@DastartdlyHQ.org - 2024-10-10 10:20 +0000
Re: "Safe C++ is A new Proposal to Make C++ Memory-Safe" Michael S <already5chosen@yahoo.com> - 2024-10-10 13:44 +0300
Re: "Safe C++ is A new Proposal to Make C++ Memory-Safe" Muttley@DastartdlyHQ.org - 2024-10-10 10:50 +0000
Re: "Safe C++ is A new Proposal to Make C++ Memory-Safe" Michael S <already5chosen@yahoo.com> - 2024-10-10 14:10 +0300
Re: "Safe C++ is A new Proposal to Make C++ Memory-Safe" Muttley@DastartdlyHQ.org - 2024-10-10 13:11 +0000
Re: "Safe C++ is A new Proposal to Make C++ Memory-Safe" Michael S <already5chosen@yahoo.com> - 2024-10-10 16:54 +0300
Re: "Safe C++ is A new Proposal to Make C++ Memory-Safe" Paavo Helde <eesnimi@osa.pri.ee> - 2024-10-10 18:08 +0300
Re: "Safe C++ is A new Proposal to Make C++ Memory-Safe" wij <wyniijj5@gmail.com> - 2024-10-10 23:37 +0800
Re: "Safe C++ is A new Proposal to Make C++ Memory-Safe" Paavo Helde <eesnimi@osa.pri.ee> - 2024-10-10 19:03 +0300
Re: "Safe C++ is A new Proposal to Make C++ Memory-Safe" Michael S <already5chosen@yahoo.com> - 2024-10-10 19:11 +0300
Re: "Safe C++ is A new Proposal to Make C++ Memory-Safe" David Brown <david.brown@hesbynett.no> - 2024-10-10 20:01 +0200
Re: "Safe C++ is A new Proposal to Make C++ Memory-Safe" Tim Rentsch <tr.17687@z991.linuxsc.com> - 2024-10-10 07:56 -0700
Re: "Safe C++ is A new Proposal to Make C++ Memory-Safe" Michael S <already5chosen@yahoo.com> - 2024-10-10 18:56 +0300
Re: "Safe C++ is A new Proposal to Make C++ Memory-Safe" Ross Finlayson <ross.a.finlayson@gmail.com> - 2024-10-20 10:13 -0700
Re: "Safe C++ is A new Proposal to Make C++ Memory-Safe" jseigh <jseigh_es00@xemaps.com> - 2024-10-10 12:13 -0400
Re: "Safe C++ is A new Proposal to Make C++ Memory-Safe" Bonita Montero <Bonita.Montero@gmail.com> - 2024-10-10 18:29 +0200
Re: "Safe C++ is A new Proposal to Make C++ Memory-Safe" Vir Campestris <vir.campestris@invalid.invalid> - 2024-10-20 12:37 +0100
Re: "Safe C++ is A new Proposal to Make C++ Memory-Safe" Michael S <already5chosen@yahoo.com> - 2024-10-20 14:46 +0300
Re: "Safe C++ is A new Proposal to Make C++ Memory-Safe" Muttley@DastartdlyHQ.org - 2024-10-20 14:23 +0000
Re: "Safe C++ is A new Proposal to Make C++ Memory-Safe" jseigh <jseigh_es00@xemaps.com> - 2024-10-27 19:09 -0400
Re: "Safe C++ is A new Proposal to Make C++ Memory-Safe" jseigh <jseigh_es00@xemaps.com> - 2024-10-27 20:40 -0400
Re: "Safe C++ is A new Proposal to Make C++ Memory-Safe" wij <wyniijj5@gmail.com> - 2024-10-28 09:22 +0800
Re: "Safe C++ is A new Proposal to Make C++ Memory-Safe" "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2024-10-27 21:18 -0700
Re: "Safe C++ is A new Proposal to Make C++ Memory-Safe" jseigh <jseigh_es00@xemaps.com> - 2024-10-28 12:25 -0400
Re: "Safe C++ is A new Proposal to Make C++ Memory-Safe" jseigh <jseigh_es00@xemaps.com> - 2024-10-30 12:56 -0400
Re: "Safe C++ is A new Proposal to Make C++ Memory-Safe" "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2024-10-30 12:50 -0700
Re: "Safe C++ is A new Proposal to Make C++ Memory-Safe" jseigh <jseigh_es00@xemaps.com> - 2024-10-30 16:31 -0400
Re: "Safe C++ is A new Proposal to Make C++ Memory-Safe" "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2024-11-04 12:47 -0800
Re: "Safe C++ is A new Proposal to Make C++ Memory-Safe" jseigh <jseigh_es00@xemaps.com> - 2024-11-07 07:02 -0500
Re: "Safe C++ is A new Proposal to Make C++ Memory-Safe" Lynn McGuire <lynnmcguire5@gmail.com> - 2024-11-07 20:14 -0600
Re: "Safe C++ is A new Proposal to Make C++ Memory-Safe" jseigh <jseigh_es00@xemaps.com> - 2024-11-08 09:40 -0500
Re: "Safe C++ is A new Proposal to Make C++ Memory-Safe" scott@slp53.sl.home (Scott Lurndal) - 2024-11-08 14:48 +0000
Re: "Safe C++ is A new Proposal to Make C++ Memory-Safe" Muttley@DastartdlyHQ.org - 2024-11-08 14:54 +0000
Re: "Safe C++ is A new Proposal to Make C++ Memory-Safe" "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2024-11-08 12:40 -0800
Re: "Safe C++ is A new Proposal to Make C++ Memory-Safe" Muttley@dastardlyhq.com - 2024-11-09 12:01 +0000
Re: "Safe C++ is A new Proposal to Make C++ Memory-Safe" "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2024-11-09 12:39 -0800
Re: "Safe C++ is A new Proposal to Make C++ Memory-Safe" Muttley@DastartdlyHQ.org - 2024-11-11 09:56 +0000
Re: "Safe C++ is A new Proposal to Make C++ Memory-Safe" "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2024-11-11 13:36 -0800
Re: "Safe C++ is A new Proposal to Make C++ Memory-Safe" Muttley@DastartdlyHQ.org - 2024-11-12 08:28 +0000
Re: "Safe C++ is A new Proposal to Make C++ Memory-Safe" "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2024-11-12 13:56 -0800
Re: "Safe C++ is A new Proposal to Make C++ Memory-Safe" "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2024-11-12 13:59 -0800
Re: "Safe C++ is A new Proposal to Make C++ Memory-Safe" Ross Finlayson <ross.a.finlayson@gmail.com> - 2024-11-12 16:20 -0800
Re: "Safe C++ is A new Proposal to Make C++ Memory-Safe" Ross Finlayson <ross.a.finlayson@gmail.com> - 2024-11-10 13:02 -0800
Re: "Safe C++ is A new Proposal to Make C++ Memory-Safe" Ross Finlayson <ross.a.finlayson@gmail.com> - 2024-11-10 13:05 -0800
Re: "Safe C++ is A new Proposal to Make C++ Memory-Safe" "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2024-11-08 12:46 -0800
Re: "Safe C++ is A new Proposal to Make C++ Memory-Safe" wij <wyniijj5@gmail.com> - 2024-11-09 05:18 +0800
Re: "Safe C++ is A new Proposal to Make C++ Memory-Safe" "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2024-11-08 13:23 -0800
Re: "Safe C++ is A new Proposal to Make C++ Memory-Safe" wij <wyniijj5@gmail.com> - 2024-11-09 05:25 +0800
Re: "Safe C++ is A new Proposal to Make C++ Memory-Safe" "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2024-11-08 13:27 -0800
Re: "Safe C++ is A new Proposal to Make C++ Memory-Safe" wij <wyniijj5@gmail.com> - 2024-11-09 06:02 +0800
Re: "Safe C++ is A new Proposal to Make C++ Memory-Safe" "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2024-11-08 14:09 -0800
Re: "Safe C++ is A new Proposal to Make C++ Memory-Safe" wij <wyniijj5@gmail.com> - 2024-11-09 06:35 +0800
Re: "Safe C++ is A new Proposal to Make C++ Memory-Safe" "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2024-11-08 14:37 -0800
Re: "Safe C++ is A new Proposal to Make C++ Memory-Safe" wij <wyniijj5@gmail.com> - 2024-11-09 06:47 +0800
Re: "Safe C++ is A new Proposal to Make C++ Memory-Safe" "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2024-11-08 14:58 -0800
Re: "Safe C++ is A new Proposal to Make C++ Memory-Safe" wij <wyniijj5@gmail.com> - 2024-11-09 07:09 +0800
Re: "Safe C++ is A new Proposal to Make C++ Memory-Safe" "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2024-11-08 15:35 -0800
Re: "Safe C++ is A new Proposal to Make C++ Memory-Safe" scott@slp53.sl.home (Scott Lurndal) - 2024-11-08 23:50 +0000
Re: "Safe C++ is A new Proposal to Make C++ Memory-Safe" "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2024-11-08 18:11 -0800
Re: "Safe C++ is A new Proposal to Make C++ Memory-Safe" "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2024-11-08 14:39 -0800
Re: "Safe C++ is A new Proposal to Make C++ Memory-Safe" wij <wyniijj5@gmail.com> - 2024-11-09 06:58 +0800
Re: "Safe C++ is A new Proposal to Make C++ Memory-Safe" "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2024-11-08 15:01 -0800
Re: "Safe C++ is A new Proposal to Make C++ Memory-Safe" wij <wyniijj5@gmail.com> - 2024-11-09 07:13 +0800
Re: "Safe C++ is A new Proposal to Make C++ Memory-Safe" "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2024-11-08 15:40 -0800
Re: "Safe C++ is A new Proposal to Make C++ Memory-Safe" wij <wyniijj5@gmail.com> - 2024-11-09 08:19 +0800
Re: "Safe C++ is A new Proposal to Make C++ Memory-Safe" "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2024-11-08 18:15 -0800
Re: "Safe C++ is A new Proposal to Make C++ Memory-Safe" scott@slp53.sl.home (Scott Lurndal) - 2024-11-09 16:23 +0000
Re: "Safe C++ is A new Proposal to Make C++ Memory-Safe" "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2024-11-09 12:42 -0800
Re: "Safe C++ is A new Proposal to Make C++ Memory-Safe" scott@slp53.sl.home (Scott Lurndal) - 2024-11-09 23:23 +0000
Re: "Safe C++ is A new Proposal to Make C++ Memory-Safe" Paavo Helde <eesnimi@osa.pri.ee> - 2024-11-10 11:00 +0200
Re: "Safe C++ is A new Proposal to Make C++ Memory-Safe" "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2024-11-12 16:56 -0800
Re: "Safe C++ is A new Proposal to Make C++ Memory-Safe" "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2024-11-12 16:59 -0800
Re: "Safe C++ is A new Proposal to Make C++ Memory-Safe" "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2024-11-12 17:05 -0800
Re: "Safe C++ is A new Proposal to Make C++ Memory-Safe" Muttley@dastardlyhq.com - 2024-11-09 12:01 +0000
Re: "Safe C++ is A new Proposal to Make C++ Memory-Safe" Muttley@dastardlyhq.com - 2024-11-09 12:01 +0000
Re: "Safe C++ is A new Proposal to Make C++ Memory-Safe" "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2024-11-09 12:50 -0800
Re: "Safe C++ is A new Proposal to Make C++ Memory-Safe" Tim Rentsch <tr.17687@z991.linuxsc.com> - 2024-11-04 06:59 -0800
Re: "Safe C++ is A new Proposal to Make C++ Memory-Safe" jseigh <jseigh_es00@xemaps.com> - 2024-11-30 10:03 -0500
csiph-web