Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.programming > #5936
| From | Melzzzzz <mel@zzzzz.com> |
|---|---|
| Newsgroups | comp.programming |
| Subject | Re: About transactional memory |
| Date | 2015-10-22 04:00 +0200 |
| Organization | albasani.net |
| Message-ID | <20151022040050.58c2aecf@maxa-pc> (permalink) |
| References | <n099da$p0g$1@dont-email.me> <n099vp$qho$1@dont-email.me> <20151022024411.5dd9275c@maxa-pc> <n09fbe$7kk$1@dont-email.me> |
On Thu, 22 Oct 2015 02:51:42 +0100 Richard Heathfield <rjh@cpax.org.uk> wrote: > On 22/10/15 01:44, Melzzzzz wrote: > > On Thu, 22 Oct 2015 01:20:09 +0100 > > Richard Heathfield <rjh@cpax.org.uk> wrote: > > > >> On 22/10/15 04:12, Ramine wrote: > >>> > >>> Hello, > >>> > >>> > >>> I was thinking more and more... > >> > >> Okay, I'll run with that for now. > >> > >>> > >>> And now i have come to an interesting subject... > >>> > >>> Perhaps you will ask me a question as this: > >>> > >>> Amine, why have you invented your new scalable distributed > >>> reader-writer mutex, and why have you not simply used > >>> transactional memory like: Intel TSX or others.. > >> > >> Well, no, but I do have a question for you. > >> > >> This code is from Mlock.pas: > >> > >> Buffer1 := AllocMem(SizeOf(TListEntry) + Alignment); > >> FCount1 := PListEntry((int(Buffer1) + Alignment - 1) > >> and not (Alignment - 1)); > >> > >> I am guessing that AllocMem is rather like malloc, in that it > >> allocates a bunch of memory. Is AllocMem an implementation-defined > >> function, or one of yours? If it's one of yours, where is the > >> source code? > >> > >> If it's not one of yours, what happens if it can't allocate the > >> memory? Does it return some kind of failure indicator, a la malloc? > >> > >> If so, why aren't you testing for that, and is all your code this > >> shaky? > >> > > > > It can be configured to either return NULL or throw run time error. > > By default it throws error. > > Okay, so if there isn't enough memory, either it throws an error, in > which case the program aborts unexpectedly (I see no "catch" code > here), or it scribbles all over memory it doesn't own. > > Neither option looks good from over here. > What puzzles me most is that global variable which controls function behavior can be set by user ;p
Back to comp.programming | Previous | Next — Previous in thread | Find similar | Unroll thread
Re: About transactional memory Richard Heathfield <rjh@cpax.org.uk> - 2015-10-22 01:20 +0100
Re: About transactional memory Melzzzzz <mel@zzzzz.com> - 2015-10-22 02:44 +0200
Re: About transactional memory Richard Heathfield <rjh@cpax.org.uk> - 2015-10-22 02:51 +0100
Re: About transactional memory Melzzzzz <mel@zzzzz.com> - 2015-10-22 04:00 +0200
csiph-web