Commit 13c65723 authored by David Crawshaw's avatar David Crawshaw

plugin: mention OS X support and concurrency

Change-Id: I4270bf81511a5bf80ed146f5e66e4f8aeede2aa2
Reviewed-on: https://go-review.googlesource.com/31463Reviewed-by: default avatarIan Lance Taylor <iant@golang.org>
parent 023bb034
...@@ -4,7 +4,7 @@ ...@@ -4,7 +4,7 @@
// Package plugin implements loading and symbol resolution of Go plugins. // Package plugin implements loading and symbol resolution of Go plugins.
// //
// Currently plugins only work on Linux. // Currently plugins only work on Linux and Darwin.
// //
// A plugin is a Go main package with exported functions and variables that // A plugin is a Go main package with exported functions and variables that
// has been built with: // has been built with:
...@@ -24,6 +24,8 @@ type Plugin struct { ...@@ -24,6 +24,8 @@ type Plugin struct {
} }
// Open opens a Go plugin. // Open opens a Go plugin.
// If a path has already been opened, then the existing *Plugin is returned.
// It is safe for concurrent use by multiple goroutines.
func Open(path string) (*Plugin, error) { func Open(path string) (*Plugin, error) {
return open(path) return open(path)
} }
...@@ -31,6 +33,7 @@ func Open(path string) (*Plugin, error) { ...@@ -31,6 +33,7 @@ func Open(path string) (*Plugin, error) {
// Lookup searches for a symbol named symName in plugin p. // Lookup searches for a symbol named symName in plugin p.
// A symbol is any exported variable or function. // A symbol is any exported variable or function.
// It reports an error if the symbol is not found. // It reports an error if the symbol is not found.
// It is safe for concurrent use by multiple goroutines.
func (p *Plugin) Lookup(symName string) (Symbol, error) { func (p *Plugin) Lookup(symName string) (Symbol, error) {
return lookup(p, symName) return lookup(p, symName)
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment