網站首頁 編程語言 正文
安裝vscode
sudo rpm --import https://packages.microsoft.com/keys/microsoft.asc
sudo sh -c 'echo -e "[code]\nname=Visual Studio Code\nbaseurl=https://packages.microsoft.com/yumrepos/vscode\nenabled=1\ngpgcheck=1\ngpgkey=https://packages.microsoft.com/keys/microsoft.asc" > /etc/yum.repos.d/vscode.repo'
yum check-update
sudo yum install code
給vscode安裝擴展
C/C++
C/C++ Extension Pack
vscode中gdb調試
打開文件夾(默認創建工作區隱藏文件夾)
打開C/C++文件,光標放在文件內
按F1,輸入C/C++,選擇C/C++:Edit configuration,生成c_cpp_properties.json配置文件。一般來說不需要更改,若想更好的智能提示,可以在includePath里添加新的目錄。例如
"/home/postgres/pgcode/postgres-REL_14_2/src/include",
"/home/postgres/pgcode/postgres-REL_14_2/src/include/portability",
"/home/postgres/pgcode/postgres-REL_14_2/src/interfaces/libpq"
調試動態庫
在本機上調試PG插件citus,citus的源碼放在PG源碼的contrib中。
在調試,點擊“創建 launch.json”,右下角點擊“添加配置”,在彈出的窗口選擇“C/C++ :(gdb)附加”。
"program": "/home/postgres/pgREL1402/bin/postgres"
調試程序
例如調試pg_dump。
假如在命令行里我們輸入如下命令
pg_dump "host=192.168.0.109 port=15431 user=tua password=123 dbname=testddl" -s -t tm
在調試里需要等價成
"program": "/home/postgres/pgREL1402/bin/pg_dump",
"args": ["host=192.168.0.109 port=15431 user=tua password=123 dbname=testddl","-s","-t","tm"],
最后點擊“開始調試”或者F5進入調試。
識別需要attach的PG進程
在psql命令行里執行東西后,怎樣調試呢?需要將gdb附加到對應psql的PG后臺進程。可以通過下面語句找出來。
SELECT procpid, start, now() - start AS lap, current_query
FROM (SELECT backendid,
pg_stat_get_backend_pid(S.backendid) AS procpid,
pg_stat_get_backend_activity_start(S.backendid) AS start,
pg_stat_get_backend_activity(S.backendid) AS current_query
FROM
(SELECT pg_stat_get_backend_idset() AS backendid) AS S
) AS S WHERE current_query <> '<IDLE>' ORDER BY lap DESC;
原文鏈接:https://www.cnblogs.com/wlsandwho/p/16051272.html
相關推薦
- 2022-10-02 react中(含hooks)同步獲取state值的方式_React
- 2023-01-31 基于C#實現FTP下載文件_C#教程
- 2021-11-08 Android如何實現時間線效果_Android
- 2022-10-12 pyinstaller將python程序打包為可執行文件_python
- 2022-09-07 python?sklearn?畫出決策樹并保存為PDF的實現過程_python
- 2022-06-13 云計算openstack框架分類及發展階段概述_OpenStack
- 2022-01-05 出現escript: exception error: undefined function rab
- 2022-08-27 C++?Thread實現簡單的socket多線程通信_C 語言
- 最近更新
-
- window11 系統安裝 yarn
- 超詳細win安裝深度學習環境2025年最新版(
- Linux 中運行的top命令 怎么退出?
- MySQL 中decimal 的用法? 存儲小
- get 、set 、toString 方法的使
- @Resource和 @Autowired注解
- Java基礎操作-- 運算符,流程控制 Flo
- 1. Int 和Integer 的區別,Jav
- spring @retryable不生效的一種
- Spring Security之認證信息的處理
- Spring Security之認證過濾器
- Spring Security概述快速入門
- Spring Security之配置體系
- 【SpringBoot】SpringCache
- Spring Security之基于方法配置權
- redisson分布式鎖中waittime的設
- maven:解決release錯誤:Artif
- restTemplate使用總結
- Spring Security之安全異常處理
- MybatisPlus優雅實現加密?
- Spring ioc容器與Bean的生命周期。
- 【探索SpringCloud】服務發現-Nac
- Spring Security之基于HttpR
- Redis 底層數據結構-簡單動態字符串(SD
- arthas操作spring被代理目標對象命令
- Spring中的單例模式應用詳解
- 聊聊消息隊列,發送消息的4種方式
- bootspring第三方資源配置管理
- GIT同步修改后的遠程分支