mirror of
				https://github.com/python/cpython.git
				synced 2025-10-24 18:33:49 +00:00 
			
		
		
		
	 d5cacbb1d9
			
		
	
	
		d5cacbb1d9
		
	
	
	
	
		
			
			Known limitations of the current implementation: - documentation changes are incomplete - there's a reference leak I haven't tracked down yet The leak is most visible by running: ./python -m test -R3:3 test_importlib However, you can also see it by running: ./python -X showrefcount Importing the array or _testmultiphase modules, and then deleting them from both sys.modules and the local namespace shows significant increases in the total number of active references each cycle. By contrast, with _testcapi (which continues to use single-phase initialisation) the global refcounts stabilise after a couple of cycles.
		
			
				
	
	
		
			27 lines
		
	
	
	
		
			487 B
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			27 lines
		
	
	
	
		
			487 B
		
	
	
	
		
			C
		
	
	
	
	
	
| #ifndef Py_IMPORTDL_H
 | |
| #define Py_IMPORTDL_H
 | |
| 
 | |
| #ifdef __cplusplus
 | |
| extern "C" {
 | |
| #endif
 | |
| 
 | |
| 
 | |
| extern const char *_PyImport_DynLoadFiletab[];
 | |
| 
 | |
| extern PyObject *_PyImport_LoadDynamicModuleWithSpec(PyObject *spec, FILE *);
 | |
| 
 | |
| /* Max length of module suffix searched for -- accommodates "module.slb" */
 | |
| #define MAXSUFFIXSIZE 12
 | |
| 
 | |
| #ifdef MS_WINDOWS
 | |
| #include <windows.h>
 | |
| typedef FARPROC dl_funcptr;
 | |
| #else
 | |
| typedef void (*dl_funcptr)(void);
 | |
| #endif
 | |
| 
 | |
| 
 | |
| #ifdef __cplusplus
 | |
| }
 | |
| #endif
 | |
| #endif /* !Py_IMPORTDL_H */
 |