StreamWrapperBase

from panda3d.core import StreamWrapperBase
class StreamWrapperBase

Bases: DTOOL_SUPER_BASE

The base class for both IStreamWrapper and OStreamWrapper, this provides the common locking interface.

Inheritance diagram

Inheritance diagram of StreamWrapperBase

__init__(*args, **kwargs)
acquire()

C++ Interface: acquire(const StreamWrapperBase self)

/**
  • Acquires the internal lock.

  • User code should call this to take temporary possession of the stream and

  • perform direct I/O operations on it, for instance to make several

  • sequential atomic reads. You may not call any of the StreamWrapper methods

  • while the lock is held, other than release().

  • Use with extreme caution! This is a very low-level, non-recursive lock.

  • You must call acquire() only once, and you must later call release()

  • exactly once. Failing to do so may result in a hard deadlock with no

  • available debugging features.

*/

release()

C++ Interface: release(const StreamWrapperBase self)

/**
  • Releases the internal lock. Must be called exactly once following a call

  • to acquire(). See the cautions with acquire().

*/