I wasn't referring to concurrency within package scope, but data crossing 
package boundaries (the earlier post says libraries' are responsible to 
ensure data passed *to* them is safe). The map type reveals an 
implementation detail by documenting that it isn't safe for parallel use. 

On Friday, June 24, 2016 at 8:52:40 PM UTC-7, Henry wrote:
>
> The implementation of map is not a valid argument to "unboxing the black 
> boxes". 
>
> The question to ask is who does the concurrency. In the case of map, if 
> the user is the one accessing the map concurrently, then it is the user's 
> responsibility to ensure the map is concurrent safe. If the map internally 
> implements some concurrent processing, then the map has the responsibility 
> to ensure data integrity during the concurrent processing. The map's 
> implementation should be invisible to the user. 
>

-- 
You received this message because you are subscribed to the Google Groups 
"golang-nuts" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to golang-nuts+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to