|
|
|
La libreria di riferimento di Python |
|
|
|
Disponibilità: Unix.
Il modulo dl definisce un'interfaccia per la funzione
dlopen() che è l'interfaccia più comune sulle piattaforme
Unix per gestire dinamicamente delle librerie collegate. Permette al
programma di richiamare funzioni arbitrarie in queste librerie.
Note:
Questo modulo non funzionerà a meno che
sizeof(int) == sizeof(long) == sizeof(char *)
Se non è questo il caso, al momento dell'import verrà sollevata
un'eccezione SystemError.
Il modulo dl definisce le seguenti funzioni:
open( |
name[, mode = RTLD_LAZY ]) |
-
Apre un file oggetto condiviso e restituisce un gestore. mode
indica che il binding (NdT: collegamento, legame) verrà posticipato
(RTLD_LAZY) oppure verrà immediatamente eseguito
(RTLD_NOW). Il valore predefinito è RTLD_LAZY.
Notate che alcuni sistemi non supportano RTLD_NOW.
Il valore restituito è un dlobject.
Il modulo dl definisce le seguenti costanti:
- RTLD_LAZY
-
Utile come argomento di open().
- RTLD_NOW
-
Utile come argomento di open(). Notate che su sistemi che
non suportano il binding immediato, questa costante non apparirà nel
modulo. Per ottenere la massima portabilità, utilizzate hasattr()
in modo da determinare se il sistema supporta o meno il binding immediato.
Il modulo dl definisce le seguenti eccezioni:
- exception error
-
L'eccezione sollevata quando si verifica un errore
all'interno delle procedure di caricamento e collegamento dinamico.
Esempio:
>>> import dl, time
>>> a=dl.open('/lib/libc.so.6')
>>> a.call('time'), time.time()
(929723914, 929723914.498)
Questo esempio è stato provato su un sistema Debian GNU/Linux, ed è
una buona prova del fatto che utilizzare questo modulo è spesso una pessima
idea.
|
|
|
La libreria di riferimento di Python |
|
|
|
Release 2.3.4, documentation updated on 21. maggio 2005.
Vedete Circa questo documento... per informazioni su modifiche e suggerimenti.