If such an entry exists, a copy will be returned. A timeout parameter can be specified to cause the operation to return after a specified time interval. In Jini, resources are acquired with a lease time, usually on the order of seconds or minutes. When the lease expires, the resource becomes unavailable. JavaSpaces makes extensive use of this leasing mechanism, whereby all entries written to a space have an associated lease.
Leases greatly simplify the maintenance of a space.
For example, entries that are no longer needed are automatically removed, considerably reducing the burden on application developers. Several utility classes that simplify lease management provide features such as simple ways to automatically renew leases if desired. Transactions Partial failure presents some of the most difficult challenges in distributed systems. Jini has several features that allow a system to operate correctly in the face of partial failure, including a very powerful distributed transactions facility. The JavaSpaces operations described above can take advantage of these transactional capabilities.