Hi!

On 25 Sep., 00:08, Simon King <[email protected]> wrote:
> So, I'll try to fix the Expect.quit() method.

To sum it up:
 * Expect.quit() needs to get rid of self.__local_tmpfile
 * Expect._local_tmpfile() uses self.__local_tmpfile, or computes a
new filename that depends on self.pid() and is unique for the given
fork.

Then, caching works:
  sage: gap._local_tmpfile() is gap._local_tmpfile()
  True

and different interfaces have different tmpfiles:
  sage: gap._local_tmpfile() != singular._local_tmpfile()
  True

and parallelisation works:
  sage: @parallel
  ....: def f(n):
  ....:     return gap._local_tmpfile()
  ....:
  sage: L = [t[1] for t in f(range(5))]
  sage: len(set(L))
  5
  sage: print gap._local_tmpfile()
  /home/king/.sage//temp/gauss/24281//interface//tmp24283
  sage: L = [t[1] for t in f(range(5))]
  sage: len(set(L))
  5

So, I guess that in a few minutes #10004 will be ready for review!

Cheers,
Simon

-- 
To post to this group, send an email to [email protected]
To unsubscribe from this group, send an email to 
[email protected]
For more options, visit this group at http://groups.google.com/group/sage-devel
URL: http://www.sagemath.org

Reply via email to