[ 
https://issues.apache.org/jira/browse/ARROW-1134?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16057764#comment-16057764
 ] 

Uwe L. Korn commented on ARROW-1134:
------------------------------------

[~tobyshaw] I would be in favour here to not expose the {{#include <mutex>}} 
publicly. This won't be straightforward as you would need to write private 
implementations then for some of the classes. Alternatively in some cases, we 
probably could implement functions without a mutex, e.g. 
https://github.com/apache/arrow/blob/master/cpp/src/arrow/io/memory.cc#L152 
could be refactored to be lock-free. Can you make a patch for that?

Is there a list showing what is disallowed in C++/CLI?

>  Allow C++/CLI projects to build with Arrow​
> --------------------------------------------
>
>                 Key: ARROW-1134
>                 URL: https://issues.apache.org/jira/browse/ARROW-1134
>             Project: Apache Arrow
>          Issue Type: Improvement
>          Components: C++
>            Reporter: Toby Shaw
>            Priority: Minor
>
> Currently, the inclusion of <mutex> in some of Arrow's C++ headers prevents 
> C++/CLI code from building against it.
> From a C++/CLI project:
> #include <arrow/io/file.h>
> ...
> "#error directive: <mutex> is not supported when compiling with /clr or 
> /clr:pure."
> This could be patched by optionally relying on Boost's mutex/lock_guard 
> instead of std, or not exposing the #include <mutex> publically.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Reply via email to