@Alan

yes, git is really good for these things, I forgot about that.

I did

git checkout 67ef7be48217c098ae49bb893df5e170c3eccc2c
make VERBOSE=1 test_wxPLplotDemo


&Phil
hmm, still some issues.

Good thing I decided to try on all platforms because I was almost going to 
shout success after trying the 2 ubuntus and debian (that have wxwidgets 
3.0)
but on CentOS the Yield() has no effect (don't  know if it's because is 
wxWidgets 3.1)

So, it happens that I had a similar problem some weeks ago, the problem was 
that my wxWidgets app (a client) must read some data from a socket on a 
server
and potentially this can take minutes.

Initially I did the reading on the socket on the main window frame.
But the reading blocks all the GUI, it's not even possible to exit the 
program, so I started searching for a way to avoid the blocking, and I found 
the Yield() function on their docs.

However it had no effect at all :-)

So, my next step was to use a separate thread as explained in their 
examples.
It's good that wxWidgets has its own thread API.
This makes the code much more complex, specially the way one thread 
communicates with the other, but works like a charm.
Since my goal was to detect when one task was finished , it may be possible 
to do something similar here.

I'll post on my next email the example I followed.

here it goes the results

ubuntu, debian, a plot shows

20:53:09: Debug: wxPLplotwindow::wxPLplotwindow
20:53:09: Debug: frame->Create
20:53:09: Debug: wxPLplotwindow::OnCreate
20:53:09: Debug: plD_init_wxwidgets(): enter
20:53:09: Debug: wxPLDevice(): enter
20:53:09: Debug: wxPLDevice(): gc done
20:53:09: Debug: wxPLDevice(): m_interactiveTextGcdc done
20:53:09: Debug: wxPLDevice(): SetDC done
20:53:09: Debug: wxPLDevice(): leave
20:53:09: Debug: plD_init_wxwidgets(): leave
20:53:09: Debug: Plot()


centOS, here we get a window with no plot, see the NULL below

21:01:37: Debug: wxPLplotwindow::wxPLplotwindow
21:01:37: Debug: frame->Create
21:01:37: Debug: pls NULL
21:01:37: Debug: wxPLplotwindow::OnCreate
21:01:37: Debug: plD_init_wxwidgets(): enter
21:01:37: Debug: wxPLDevice(): enter
21:01:37: Debug: wxPLDevice(): gc done
21:01:37: Debug: wxPLDevice(): m_interactiveTextGcdc done
21:01:37: Debug: wxPLDevice(): SetDC done
21:01:37: Debug: wxPLDevice(): leave
21:01:37: Debug: plD_init_wxwidgets(): leave



----- Original Message ----- 
From: "Alan W. Irwin" <ir...@beluga.phys.uvic.ca>
To: "Pedro Vicente" <pedro.vice...@space-research.org>
Cc: "Phil Rosenberg" <p.d.rosenb...@gmail.com>; "PLplot development list"
<plplot-devel@lists.sourceforge.net>
Sent: Tuesday, December 20, 2016 6:56 PM
Subject: Re: Infinite Yielding issue


> On 2016-12-20 17:49-0500 Pedro Vicente wrote:
>
>> @Alan, Phil
>>
>>
>> here are my results
>>
>> for git master current
>>
>> CentOS 6.8 wxWidgets 3.1
>> Linux 14.04 wxWidgets 3.0
>> Linux 16.04 wxWidgets 3.0
>> Debian 8.0 wxWidgets 3.0
>>
>> all infinite loop
>>
>> 14:25:57: Debug: wxPLplotwindow::wxPLplotwindow
>> 14:25:57: Debug: frame->Create
>> 14:25:57: Debug: Plot() Yielding
>> 14:25:57: Debug: Plot() Yielding
>>
>> made with
>>
>> cmake ..  -G "Unix
>> Makefiles" -DCMAKE_INSTALL_PREFIX:PATH=/home/pvn/plplot-install 
>> -DCMAKE_BUILD_TYPE=Debug
>>  -DBUILD_SHARED_LIBS:BOOL=OFF  -DBUILD_TEST=ON -DPLPLOT_WX_DEBUG_OUTPUT=ON
>>
>> yesterday I sent this result for Ubuntu 14.04, but that was with
>> yesterday's master.
>>
>> Phil, today there was a new commit, so could that be it ?
>
> Hi Pedro:
>
> You can prove or disprove the latest commit 995e75e6086 is the source of
> some/all of the above issues by running those tests again on the
> previous commit.  Which from the current "git log" results you should
> be able to get access to as follows:
>
> git checkout 995e75e6086^
>
> or the equivalent
>
> git checkout 65e7b3c9980
>
> Alan
> __________________________
> Alan W. Irwin
>
> Astronomical research affiliation with Department of Physics and
> Astronomy,
> University of Victoria (astrowww.phys.uvic.ca).
>
> Programming affiliations with the FreeEOS equation-of-state
> implementation for stellar interiors (freeeos.sf.net); the Time
> Ephemerides project (timeephem.sf.net); PLplot scientific plotting
> software package (plplot.sf.net); the libLASi project
> (unifont.org/lasi); the Loads of Linux Links project (loll.sf.net);
> and the Linux Brochure Project (lbproject.sf.net).
> __________________________
>
> Linux-powered Science
> __________________________
>


------------------------------------------------------------------------------
Developer Access Program for Intel Xeon Phi Processors
Access to Intel Xeon Phi processor-based developer platforms.
With one year of Intel Parallel Studio XE.
Training and support from Colfax.
Order your platform today.http://sdm.link/intel
_______________________________________________
Plplot-devel mailing list
Plplot-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/plplot-devel

Reply via email to