Torna indietro   Hardware Upgrade Forum > Software > Programmazione

HONOR Magic 8 Pro: ecco il primo TOP del 2026! La recensione
HONOR Magic 8 Pro: ecco il primo TOP del 2026! La recensione
HONOR ha finalmente lanciato il suo nuovo flagship: Magic 8 Pro. Lo abbiamo provato a fondo in queste settimane e ve lo raccontiamo nella nostra recensione completa. HONOR rimane fedele alle linee della versione precedente, aggiungendo però un nuovo tasto dedicato all'AI. Ma è al suo interno che c'è la vera rivoluzione grazie al nuovo Snapdragon 8 Elite Gen 5 e alla nuova MagicOS 10
Insta360 Link 2 Pro e 2C Pro: le webcam 4K che ti seguono, anche con gimbal integrata
Insta360 Link 2 Pro e 2C Pro: le webcam 4K che ti seguono, anche con gimbal integrata
Le webcam Insta360 Link 2 Pro e Link 2C Pro sono una proposta di fascia alta per chi cerca qualità 4K e tracciamento automatico del soggetto senza ricorrere a configurazioni complesse. Entrambi i modelli condividono sensore, ottiche e funzionalità audio avanzate, differenziandosi per il sistema di tracciamento: gimbal a due assi sul modello Link 2 Pro, soluzione digitale sul 2C Pro
Motorola edge 70: lo smartphone ultrasottile che non rinuncia a batteria e concretezza
Motorola edge 70: lo smartphone ultrasottile che non rinuncia a batteria e concretezza
Motorola edge 70 porta il concetto di smartphone ultrasottile su un terreno più concreto e accessibile: abbina uno spessore sotto i 6 mm a una batteria di capacità relativamente elevata, un display pOLED da 6,7 pollici e un comparto fotografico triplo da 50 MP. Non punta ai record di potenza, ma si configura come alternativa più pragmatica rispetto ai modelli sottili più costosi di Samsung e Apple
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 25-07-2011, 12:22   #1
Arien82
Junior Member
 
Iscritto dal: Jul 2011
Messaggi: 1
[VisualC++] Problema di Rilascio Memoria con Connessione OLE DB a DB Access

Salve a tutti,
sono nuova del forum e spero che qualcuno possa aiutarmi.
Sto sviluppando un'applicazione con Visual C++ 2008 e ho bisogno di accedere ad un database Access (.accdb) per inizializzare le mie strutture dati.
Credo di essere riuscita a fare tutto in maniena abbastanza corretta (i dati vengono letti), ma probabilmente sbaglio qualcosa nel rilascio delle varie strutture dati, perchè l'occupazione di memoria, una volta chiusa la connessione col DB, rimane invariata (osservando il Task Manager).
Ho tentato di fare un'analisi del problema creando un programma di test che, con un ciclo for, esegue 10000000 la connessione al db, una query di select e il rilascio delle strutture dati, e dalla sua esecuzione ho notato che l'occupazione della memoria continua ad aumentare.

Più nello specifico, ho una classe del tipo:
Codice:
class DB{

	HRESULT hr;
	CDataSource DataSource;
        CSession Session;
	CCommand<CDynamicStringAccessor> cmd;
	
public:
	DB();
	~DB();
	void Connection();
	int Query();
	void Disconnection();
};

int DB::Connection(){
// Initialize the Component Object Module Library (COM)
    hr = CoInitialize(NULL);
    if (FAILED(hr))
    {
        cout<<"Failed to CoInitialize() COM."<<endl;
		return -1;
    }

    // Open the connection and initialize the data source specified by the passed 
    // initialization string.
    hr = dbDataSource.OpenFromInitializationString("PATH DB.accdb");
    if (FAILED(hr))
    {
		return -1;
    }
    else
    {
        hr = Session.Open(DataSource);
        if (FAILED(hr))
        {
			return -1;
        }
     }
     return 0;
}

int DB::Query(CString query){

    // Excecute the query and create a record set
    hr = cmd.Open(Session, query);
	if (SUCCEEDED(hr))
		return 0;
	else
		return -1;
}

void DB::Disconnection(){
   cmd.Close();
   DataSource.Close();
   Session.Close();
   cout<<"Cleanup. Done."<<endl;

    // Release the Component Object Module Library (COM)
    CoUninitialize();
}
Il Main di prova è un semplice ciclo for:
Codice:
void main (){
	int ret;
	for (int i = 0; i<10000000; i++){
		DB *db = new DB();
		ret = db->Connection();
		if (ret < 0) cout << "DB Initialization error";
		else {
			ret = db->Query();
			if (ret < 0) cout << "Query error";
		}
		db->Disconnection();
		delete db;
		}
	}
}
Qualcuno sa indicarmi dove sbaglio?
Grazie in anticipo!
Arien82 è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


HONOR Magic 8 Pro: ecco il primo TOP del 2026! La recensione HONOR Magic 8 Pro: ecco il primo TOP del 2026! L...
Insta360 Link 2 Pro e 2C Pro: le webcam 4K che ti seguono, anche con gimbal integrata Insta360 Link 2 Pro e 2C Pro: le webcam 4K che t...
Motorola edge 70: lo smartphone ultrasottile che non rinuncia a batteria e concretezza Motorola edge 70: lo smartphone ultrasottile che...
Display, mini PC, periferiche e networking: le novità ASUS al CES 2026 Display, mini PC, periferiche e networking: le n...
Le novità ASUS per il 2026 nel settore dei PC desktop Le novità ASUS per il 2026 nel settore de...
Serie A, richieste di risarcimento agli ...
Ferrari e Shell fanno una scelta che nes...
Fanatec svela Podium DD: 25 Nm di coppia...
I modelli AI cinesi sono ormai a pochi m...
Netflix diventa la casa globale dei film...
Monitor gaming in forte sconto su Amazon...
500 miliardi di dollari e meno dazi: l'a...
Da Detroit scopriamo le livree di Red Bu...
Microsoft, Meta e Amazon aderiscono al p...
Microsoft integrerà Copilot in Es...
Samsung Internet for Windows: il browser...
Logitech fa sul serio: mouse PRO, tastie...
Spotify aumenta ancora il prezzo del ser...
Bose QuietComfort Ultra (2ª Gen) scendon...
ASUS annuncia l'arrivo in Italia di due ...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 10:19.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v