Hi All,
I was able to overcome the earlier problem by using "probe()" function and
checking if the return value is initialized or not:
optional<std::pair<int,int>> ret =
*((*g).process_group()).probe();
if(ret)
{
//process message
}
else
{
//perform other local computation
}
Thanks,
Nikhil
From: [email protected]
Sent: Fri, 23 May 2014 21:30:26
To: [email protected]
Subject: Boost-mpi Digest, Vol 12, Issue 6
Send Boost-mpi mailing list submissions to
[email protected]
To subscribe or unsubscribe via the World Wide Web, visit
http://lists.boost.org/mailman/listinfo.cgi/boost-mpi
or, via email, send a message with subject or body 'help' to
[email protected]
You can reach the person managing the list at
[email protected]
When replying, please edit your Subject line so it is more specific
than "Re: Contents of Boost-mpi digest..."
Today's Topics:
1. Use of poll member function of mpi_process_group
(nikhil deveratha hegde)
----------------------------------------------------------------------
Message: 1
Date: 22 May 2014 17:24:25 -0000
From: "nikhil deveratha hegde" <[email protected]>
To: "[email protected]" <[email protected]>
Subject: [Boost-mpi] Use of poll member function of mpi_process_group
Message-ID: <[email protected]>
Content-Type: text/plain; charset="utf-8"
Hi All,
I am trying to use the poll function (asynchronous version) in this way:
*(g-&gt;process_group()).poll(false);
However, I get an assertion failure:
=============================
/usr/local/include/boost/optional/optional.hpp:631: typename
boost::optional_detail::optional_base&lt;T&gt;::reference_type
boost::optional&lt;T&gt;::get() [with T = std::pair&lt;int,
int&gt;]: Assertion `this-&gt;is_initialized()' failed.
=============================
I understand that poll function returns the optional&lt;T&gt; object
and one can check the status of this object to see if an
initialized/uninitialized object is returned. I tried doing something like:
optional&lt;std::pair&lt;int,int&gt;&gt;
retval(*(g-&gt;process_group()).poll(false))
But still saw the assertion failure.
Could anyone please tell me if there is a problem with the way I have built the
parallel BGL library or if my way of using this function is incorrect? I am
using parallel BGL version 0.7.0.
I would greatly appreciate any hints, solutions.
Thanks,
Nikhil
-------------- next part --------------
HTML attachment scrubbed and removed
------------------------------
Subject: Digest Footer
_______________________________________________
Boost-mpi mailing list
[email protected]
http://lists.boost.org/mailman/listinfo.cgi/boost-mpi
------------------------------
End of Boost-mpi Digest, Vol 12, Issue 6
****************************************
_______________________________________________
Boost-mpi mailing list
[email protected]
http://lists.boost.org/mailman/listinfo.cgi/boost-mpi