[GSoC] Idea: Implement functions from Concurrency namespace

YongHao Hu christopherwuy at gmail.com
Tue Feb 23 11:12:16 CST 2016


Hi,

On 16/2/23 下午10:33, Piotr Caban wrote:
> Hi,
>
> On 02/22/16 16:16, YongHao Hu wrote:
>> This year I want to implement functions from Concurrency namespace[1].
>> As Wine had already implemented class Concurrency::critical_section[2],
>> SpinWait and Concurrency::details::_GetConcurrency, and I had found
>> information in Microsoft open-source project for cloud-based
>> client-server communication in native code using a modern asynchronous
>> C++ API design[3] which are helpful for the implementation, I think that
>> I am able to handle this project.
> I'm not sure what to think about this project. It would be nice to 
> have this functions implemented in wine. On the other hand I'm 
> expecting it to be quite hard.
>
As we can refer to some implementation of Microsoft[1], do you think it 
would become easier?

For example, the event class[2] can refer to the pplxlinux.h[3],
TaskCollection[4] can refer to pplx.h[5] and
reader_writer_lock[6] can refer to pplxlinux.h[7] etc.


My simple plan may like this:
     Add tests to critical session.
     Implement Class condition variable first, which can refer to BOOST 
and tests.
     Implement Class event and tests.
     Implement Class TaskCollection and tests.
     Implement Class reader_writer_lock and tests.
     Else: Find something that I think I can handle.

Do you think such a plan would satisfy GSoC's requirement?

Thank you very much. :)

[1]: https://github.com/Microsoft/cpprestsdk

[2]: https://msdn.microsoft.com/en-us/library/dd492846.aspx
[3]: 
https://github.com/Microsoft/cpprestsdk/blob/master/Release/include/pplx/pplxlinux.h#L84

[4]: https://msdn.microsoft.com/en-us/library/dd470722.aspx
[5]: 
https://github.com/Microsoft/cpprestsdk/blob/master/Release/include/pplx/pplx.h#L146

[6]: https://msdn.microsoft.com/en-us/library/dd504907.aspx
[7]: 
https://github.com/Microsoft/cpprestsdk/blob/master/Release/include/pplx/pplxlinux.h#L140

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.winehq.org/pipermail/wine-devel/attachments/20160224/a1a08771/attachment.html>


More information about the wine-devel mailing list