title: python multiprocessing returning error 'module' object has no attribute 'myfunc'
body: <p>First off, I am very new to multiprocessing, and I can't seem to make a very simple and straightforward example work. This is the example I working with:</p>
  
  <pre><code>import multiprocessing
  
  def worker():
      """worker function"""
      print 'Worker'
      return
  
  if __name__ == '__main__':
      jobs = []
      for i in range(5):
          p = multiprocessing.Process(target=worker)
          jobs.append(p)
          p.start()
  </code></pre>
  
  <p>everytime I run a code I am getting this error multiple times :</p>
  
  <pre><code>C:\Anaconda2\lib\site-packages\IPython\utils\traitlets.py:5: UserWarning: IPython.utils.traitlets has moved to a top-level traitlets package.
    warn("IPython.utils.traitlets has moved to a top-level traitlets package.")
  Traceback (most recent call last):
    File "&lt;string&gt;", line 1, in &lt;module&gt;
    File "C:\Anaconda2\lib\multiprocessing\forking.py", line 381, in main
      self = load(from_parent)
    File "C:\Anaconda2\lib\pickle.py", line 1384, in load
      return Unpickler(file).load()
    File "C:\Anaconda2\lib\pickle.py", line 864, in load
      dispatch[key](self)
    File "C:\Anaconda2\lib\pickle.py", line 1096, in load_global
      klass = self.find_class(module, name)
    File "C:\Anaconda2\lib\pickle.py", line 1132, in find_class
      klass = getattr(mod, name)
  AttributeError: 'module' object has no attribute 'worker'
  </code></pre>
  
  <p>I know that this question is very vague but I if anyone could point me in the right direction I would appreciate it.</p>
  
  <p>I am on Windows, I run it in Anaconda with python 2.7, the code is exactly the same as above, nothing more nothing less! I run it directly in the console in the IDE</p>
  
  <p>EDIT: It looks like when I run the code directly in command prompt it works just fine, but doing it the console using Anaconda won't work. anybody knows why?</p>