1

add smartpointer demo for debug

This commit is contained in:
2022-07-19 11:25:56 +02:00
parent 98eb398156
commit 885eecf468
4 changed files with 38 additions and 1 deletions

View File

@ -37,7 +37,7 @@ void print_startup_message() {
}
int main() {
Logger::set_level(Logger::DEBUG);
Logger::set_level(Logger::TRACE);
Logger::disable_kout();
Logger::enable_serial();

View File

@ -7,6 +7,7 @@
#include "user/demo/LinkedListDemo.h"
#include "user/demo/PCSPKdemo.h"
#include "user/demo/PreemptiveThreadDemo.h"
#include "user/demo/SmartPointerDemo.h"
#include "user/demo/TextDemo.h"
#include "user/demo/VBEdemo.h"
@ -68,6 +69,9 @@ void MainMenu::run() {
case 'e':
choosen_demo = new ArrayDemo();
break;
case 'r':
choosen_demo = new SmartPointerDemo();
break;
}
if (choosen_demo != NULL) {

View File

@ -0,0 +1,14 @@
#include "user/demo/SmartPointerDemo.h"
#include "kernel/threads/IdleThread.h"
void SmartPointerDemo::run() {
log << INFO << "Initializing unique_ptr<int>:" << endl;
std::unique_ptr<int> int1 = std::make_unique<int>(1);
log << INFO << "Uninitialize..." << endl;
log << INFO << "Initializing unique_ptr<Thread>:" << endl;
std::unique_ptr<Thread> thread1 = std::make_unique<IdleThread>();
log << INFO << "Should be unitialized now..." << endl;
scheduler.exit();
}

View File

@ -0,0 +1,19 @@
#ifndef __SmartPointerDemo_include__
#define __SmartPointerDemo_include__
#include "kernel/Globals.h"
#include <memory>
class SmartPointerDemo : public Thread {
private:
SmartPointerDemo(const SmartPointerDemo& copy) = delete;
public:
SmartPointerDemo() {
kout << "Initialized SmartPointerDemo" << endl;
}
void run() override;
};
#endif