I get a segmentation fault when trying to open a memory mapped file.
Here is the producer's code:
...
TH1F *lmdmult;
...
TMapFile *mmap = TMapFile::Create("lmd.map","RECREATE", 2000000,"Lmd
memory mapped file with histograms");
mmap->Print();
...
lmdmult = new TH1F("lmdmult","lmd multiplicity",200,-0.5,199.5);
...
(loop) {
...
lmdmult->Fill((Float_t) nhlmd);
...
mmap->Update();
mmap->ls();
}
The output is:
Memory mapped file: lmd.map
Title: Lmd memory mapped file with histograms
Option: CREATE
Mapped Memory region: 0x407a7000 - 0x4098f480 (1.91 MB)
Current breakval: 0x407af000
...
lmdmult TH1F 1320 (from mmap->ls();)
When I try to access the lmd.map file from a ROOT session, I give:
TMapFile *mfile = TMapFile::Create("lmd.map");
and I get back:
Segmentation fault
bash$
Something different happens if I give a small size to the .map file.
With 20000 istead of 2000000, I can access the file from the consumer,
but I get a segmentation fault when I try to update it from the producer.
Any suggestion?
Thanks,
Piergiorgio