Настройка IDE

This commit is contained in:
2026-05-07 10:02:18 +05:00
parent f6375cd4b7
commit c9b124744d
13 changed files with 38 additions and 42 deletions
View File
-3
View File
@@ -1,3 +0,0 @@
{
"CurrentProjectSetting": "x64-Debug"
}
-15
View File
@@ -1,15 +0,0 @@
{
"OutputFoldersPerTargetSystem": {
"Local Machine": [
"out\\build\\x64-Debug",
"out\\install\\x64-Debug"
]
},
"ExpandedNodes": [
"",
"\\includes",
"\\src"
],
"SelectedNode": "\\src\\FXAlloc.c",
"PreviewInSolutionExplorer": false
}
Binary file not shown.
Binary file not shown.
-12
View File
@@ -1,12 +0,0 @@
{
"Version": 1,
"WorkspaceRootPath": "C:\\projects\\fullstack\\neurox\\ccpp\\fxalloc\\",
"Documents": [],
"DocumentGroupContainers": [
{
"Orientation": 0,
"VerticalTabListWidth": 256,
"DocumentGroups": []
}
]
}
BIN
View File
Binary file not shown.
+3
View File
@@ -0,0 +1,3 @@
{
"C_Cpp.default.configurationProvider": "ms-vscode.cmake-tools"
}
+1 -1
View File
@@ -1,4 +1,4 @@
# ccpp/fxalloc/PROGRESS.md
# FXAlloc PROGRESS.md
## Формат
* Даты следуют в обратном хронологическом порядке
+1 -1
View File
@@ -1,4 +1,4 @@
# ccpp/fxalloc/README.md
# FXAlloc README.md
# Описание
+1 -1
View File
@@ -1,4 +1,4 @@
# ccpp/fxalloc/TODO.md
# FXAlloc TODO.md
## Информация
* Файл для отслеживания текущих задач модуля **FXAlloc**
+32 -9
View File
@@ -9,6 +9,29 @@
#endif
#if !defined(__STDC_VERSION__) || (__STDC_VERSION__ < 201112L)
#error "C11 standard is required for _Atomic support"
#endif
#if defined(__clang__)
// Clang: _Atomic поддерживается в C11 во всех актуальных версиях
#elif defined(__GNUC__)
#if (__GNUC__ < 4) || (__GNUC__ == 4 && __GNUC_MINOR__ < 9)
#error "GCC < 4.9 does not support _Atomic (C11)"
#endif
#elif defined(_MSC_VER)
#if _MSC_VER < 1930 // VS 2022+ (_MSC_VER >= 1930)
#error "MSVC < VS 2022 (_MSC_VER < 1930) does not support _Atomic (C11)"
#endif
#else
#error "Unsupported compiler. Only Clang, GCC >=4.9, and MSVC VS 2022+ support _Atomic in C11"
#endif
typedef struct FXMemoryBlock FXMemoryBlock;
@@ -30,17 +53,17 @@ typedef struct FXMemoryBlock FXMemoryBlock;
/**
* @brief Пул выделяемый для отдельно взятого потока
* @brief Грейдовый пул выделяемый для градации
*
*/
typedef struct FXGradePool {
FXMemoryBlock* prealloced;
FXMemoryBlock* lifo;
FXMemoryBlock* list_first;
FXMemoryBlock* list_last;
uint32_t ntotal;
uint32_t nbusy;
uint32_t nalloc;
uint32_t nprealloc;
FXMemoryBlock* prealloced; ///< Преаллоцированные блоки
FXMemoryBlock* lifo; ///< Стэк свободных блоков
FXMemoryBlock* list; ///< Список аллоцированных блоков
uint32_t ntotal; ///< Блоков всего
uint32_t nbusy; ///< Блоков занято
uint32_t nalloc; ///< Блоков алоцировано через `malloc`
uint32_t nprealloc; ///< Блоков преаллоцировано
} FXGradePool;
#pragma pack(push, 8)