묻고 답해요
164만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결홍정모의 따라하며 배우는 C언어
6.1 scanf 반환값
int main(){ int num = 0,red=0, sum = 0; int status; printf("Enter an integer (q to quit) :"); status= scanf("%d %d", &num, &red); while (status >= 1) { sum = sum + num + red; printf("Enter next integer (q to quit) : "); status = scanf("%d %d", &num, &red); } printf("Sum = %d", sum); return 0;}여기서 정수를 입력받은 변수의 갯수로 scanf의 반환값이 status라는 변수에 저장되는 것으로 이해했는데요 변수 num red에 각각 순서대로 1 2 / 3 4 / q 5를 넣으며 디버거로 확인해봤는데요. 세번째 scanf에 5라는 정수를 입력해서 status 값이 1이 나올거라 생각했는데 왜 status값이 0으로 나올까요? num에 숫자가 아닌 문자를 넣어서 red에도 영향을 주는건가요??/5 q 순서로 바꿔서 넣어봤을때는 status값이 1이 나와 4번째 scanf를 입력하려 했지만 그냥 그대로 끝이나고 sum도 4가 중복돼서 10과 19로 값이 다르더라고요. 문자를 입력하면 뒤에 변수에도 영향을 주는거 같은데 확실하지 않아서 질문드립니다.
-
미해결파이썬 알고리즘 문제풀이 입문(코딩테스트 대비)
동전교환 효율성
안녕하세요동전교환문제에서 저는 부분집합을 만들고 계산은 마지막에 하는 방식으로 풀어봤습니다.효율성 방식에서 상태트리로 쭉 나가는 강사님 방식이랑 비교하면 뭐가 더 나은가요?def DFS(L): money= m global minn cnt=0 if L==n: #계산은 여기서 for i in range(0,n): if ch[i]==1: cnt+=(money//p[i]) money%=p[i] if cnt<minn and money==0: minn=cnt else: # 깊이탐색해서 경우의 수 만들기 ch[L]=0 DFS(L+1) ch[L]=1 DFS(L+1)
-
미해결재고시스템으로 알아보는 동시성이슈 해결방법
Facade를 controller 에서의 사용
안녕하세요 동시성 관련된 수업을 너무 잘 들었습니다. 위와 같이 만들어진 facade의 decrease 메서드를 controller에서 바로 사용하면 동시성 문제가 해결되는걸까요?
-
미해결캐글 설문조사로 데이터 분석 입문하기
12강 질문
12강에서 Q26에 대한 내용에 질문이 있습니다.A,B로 나뉘어진 문항이라 두 개를 따로 그릴 수 있는 건 이해했는데요, 처음에 그냥 show_plot_by_qno('Q26')로 그렸을 때 검은 선으로 표시되는 부분에 대해 더 자세한 설명이 듣고 싶습니다. 분명 각각 출력하면 둘 다 막대그래프인데 왜 그렇게 표시되는 건가요?
-
해결됨독하게 되새기는 C 프로그래밍
buffered-io가 사용하는 버퍼메모리에 대한 질문있어요
먼저 항상 특별한 강의 잘 듣고있습니다. 감사합니다.1. buffered-io의 buffer 메모리는 어플리케이션 메모리죠?제가 이해하기로는buffered-io방식으로 write를 한다면 호출시 바로바로 write시스템콜을 호출하는게아니라, 버퍼라고 부르는 어플리케이션메모리에 내용을 써놨다가 일정 byte이상 차게되면 실제 write시스템콜을 호출함으로써 시스템콜을 줄일 수 있는게 핵심이라고 이해했는데 맞을까요?결국에 이때 buffer라는 memory는 어플리케이션의 메모리를 말하는거죠? (커널의 메모리가 아니구요)2. read(input)에서의 buffered-io시스템콜을 한방에 하기위해서 최대한 뒤로 미루는 버퍼방식의 write와 비교해서read의 경우에는 일단 시스템콜을 호출해야할것같은데 맞나요? 따라서 read에서의 buffered-io는 모아서 시스템콜을 한다기보다는 buffer라는 chunk단위로 한방에 읽을 수 있는걸 buffered-io한다고 이해하면 맞을까요?제가 이해하기로는 buffered-io에서의 buffering방식이 read시에, write시에 다르게 느껴져서요.
-
미해결
nodeJS 교과서 git chat에서 mongoDB 사용한 이유
gif chat 예제에서 mySQL이 아니라 mongoDB를 사용하신 이유가 혹시 따로 있을까요?아니면 단순히 mongoDB를 이용한 예제를 보여주기 위함인가요?
-
해결됨최신 딥러닝 기술 Vision Transformer 개념부터 Pytorch 구현까지
비전 트랜스포머 - 최신 모델 강의에서 positional embedding
안녕하세요!비전 트랜스포머 - 최신 모델 강의에서예시로 설명해주신 R^65*128에 Epos 인 positional embedding을 더하는데도 R^65*128의 크기에는 변화가 없나요?? 이전에 클래스 정보를 더했을 때는 64에서 +1해서 65가 되었는데 positional embedding을 했을 때는 값에 변화가 없나 궁금해서 질문드립니다.
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
HomeController가 선택되는 이유가 궁금합니다
수업과 같이 코드를 다 작성하고, HelloStringApplication을 실행하고나서localhost:8080을 들어가면 왜 3개의 컨트롤러중 home컨트롤러가 실행되어 home.html이 화면에 출력되는지 궁금합니다.
-
미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part6: 웹 서버
Startup.cs 파일생성방법
지난번 1월 16일차로 Startup.cs 파일이 없어서 문의 드렸습니다만, 답변이 없으셔서 다시 글을 남깁니다.현재 Part6: 웹 서버Blazor 미니프로젝트 #1 강의 수강중인데요RankingApp Blazor 서버웹 프로젝트 생성하였습니다Blazor 미니프로젝트 #1 강의 2분24초쯤의 강의 캡처사진과 제 개인프로젝트 사진을 비교해서 보내드립니다.(강의 수강중 캡처) (개인 프로젝트 캡처) 위의 캡처사진과 같이 Startup.cs 파일이 자동생성되지않아서 강의를 따라갈 수 없습니다.현재 .NET CORE 3.1이 더이상 지원이되지않아서 비쥬얼스튜디오 2022로 다시설치후.NET CORE 6.0 으로 실행 >> HelloRazor, HelloWebAPI, HelloEmpty 등의 파일을 생성하였습니다만, Startup.cs 파일이 자동생성되지않았습니다.Startup.cs 파일생성관련해서 어떻게해야 생성이되는지 조언 부탁드립니다.
-
미해결최신 딥러닝 기술 Vision Transformer 개념부터 Pytorch 구현까지
비전 트랜스포머 - 최신 모델' 강의에서 B*N*K 와 1*K*D 를 연산
안녕하세요! 항상 좋은 강의 해주셔서 감사드립니다.'비전 트랜스포머 - 최신 모델' 강의에서 B*N*K 와 1*K*D 를 연산하면 B*N*D 가 된다고 하셨는데 어떤 연산을 통해서 어떻게 B*N*D로 변환되는지 궁금합니다. 그냥 B*N*K에서 단순히 K의 형태를 바꾸는 연산만 하면 안되는 건가요?? 어떤 원리로 연산을 통해 변환이 되는 건지 궁금해서 질문 드립니다.그리고 연산에서 R^N*D 에서 기호 R은 무엇을 뜻하는지 궁금합니다.감사합니다.
-
해결됨파이썬/장고 웹서비스 개발 완벽 가이드 with 리액트
BadHeaderError at /accounts/signup/
심지어는이런 에러까지 뜨더라구요.이것과 관련하여서는 장고 공식문서에 나온대로 예외처리를class User(AbstractUser): website_url = models.URLField(blank = True) bio = models.TextField(blank = True) def send_welcome_email(self): subject = render_to_string('accounts/welcome_email_subject.txt', { 'user': self }) content = render_to_string('accounts/welcome_email_content.txt',{ 'user': self }) # 여기서 settings는 django.conf라는 곳에서 임포트 해오는 것이고 # 기초 settings.py의 이름이 변하더라도 거기서 가져오는 것 같다. # 문제 생길 시, 추측이 아닐 수 있으니 settings를 common으로 변경해주자. sender_email = settings.WELCOME_EMAIL_SENDER if subject and content and sender_email: try: # 여기서 self.email의 의미는 User마다 email로 가입이 될텐데, 그 주소가 수신주소가 되는것이다. send_mail(subject, content, sender_email, [self.email], fail_silently=False) except BadHeaderError: return HttpResponse('Invalid Header found.') return HttpResponseRedirect('/') else: # In reality we'd use a form class # to get proper validation errors. return HttpResponse('Make sure all fields are entered and valid.') # save할때마다 호출 -> which mean is User가 생성될때마다 # 이런식의 로직 구현이 가능하다. def save(self, *args, **kwargs): is_created = (self.pk == None) super().save(*args, **kwargs) if is_created: pass이렇게 중간에 try, except로 처리해주었는데, 이렇게 해도 진행에 지장은 없을까요?애초에 이 에러가 왜 발생했는지도 이해가 잘갑니다.에러메세지를 읽어봐도 두루뭉술하게 Header values can't newlines 라고 되어있으니, 뭐가 문제인지도 파악이 어렵구요 ㅠㅠ
-
미해결파이썬/장고 웹서비스 개발 완벽 가이드 with 리액트
NoReverseMatch at /accounts/signup/
안녕하세요 선생님 ㅠㅠ연달아서 에러가 빵빵 터지네요NoReverseMatch at /accounts/signup/Reverse for 'pydenticon_image' with keyword arguments '{'data': ''}' not found. 1 pattern(s) tried: ['identicon/image/(?P<data>.+)/\\Z']인데요.문제가 되는 부분은<img src="{% url 'pydenticon_image' data=user.username %}" style="width: 24px; height: 24px;">이 부분으로 나옵니다.Error during template rendering In template /Users/daniel_choi/Desktop/total_projects/instagram_second/templates/layout.html, error at line 77 Reverse for 'pydenticon_image' with keyword arguments '{'data': ''}' not found. 1 pattern(s) tried: ['identicon/image/(?P<data>.+)/\\Z']이게 에러 추가 메세지 이구요.하지만 이것과 관련하여는 잘 작동하다가 그냥 아무것도 만진것없이 echo 쪽만 들락거리고 signup 시도했던 것 밖에 없는데, 되다가 갑자기 에러가 나니깐 당황스럽네요;(물론 admin을 제외한 계정을 계속해서 삭제하고 시도하긴 했습니다.)from django_pydenticon.views import image as pydenticon_image urlpatterns = [ path('identicon/image/<path:data>/', pydenticon_image, name = 'pydenticon_image') ]이렇게 되어있구요.accounts/forms.py에서도 User모델 상속 받고, class Meta로fields 중에서 username을 분명히 오버라이드 시킨것도 확인이 되는데, 왜 이런 에러가 발생하는지 모르겠습니다! ㅠㅠ 이거는 추가적으로 몇번 테스트를해보니깐1.계정을 생성한다2.SMTP에러가 뜬다.3.admin페이지에 들어가서 방금 생성된 계정을 삭제한다.4.다시 /accounts/signup페이지에 접속시도한다.5.<img src="{% url 'pydenticon_image' data=user.username %}" style="width: 24px; height: 24px;">관련된 reversematch에러가 뜬다.6.admin페이지에서 admin계정으로 로그인을 하고 accounts/signup 페이지로 와야 비로소 이 reversematch 에러가 뜨지 않습니다. #번외번외 적으로는 분명 계정을 생성했고, admin 페이지에서도 2개의 추가계정이 확인되는데, Django administration(어드민페이지 로그인창)을 통해서 로그인하려고 하면 비밀번호를 맞게 입력해도 로그인이 안됩니다;
-
미해결Node.js에 TypeScript 적용하기(feat. NodeBird)
Sequelize constructor.primaryKeyAttributes 오류
안녕하세요 제로초님 이전에 알려주신 Sequelize 타이핑 덕뿐에 문제 잘 해결했습니다.[0] Executing (default): SELECT `id`, `email`, `nick`, `password`, `provider`, `snsId`, `createdAt`, `updatedAt`, `de letedAt` FROM `users` AS `User` WHERE (`User`.`deletedAt` IS NULL AND `User`.`id` = 1); [0] TypeError: Cannot read properties of undefined (reading 'length') [0] at Box._initValues (C:\workspace\Dev-Mark\server\node_modules\sequelize\lib\model.js:130:49) [0] at new Model (C:\workspace\Dev-Mark\server\node_modules\sequelize\lib\model.js:116:10) [0] at new Box (C:\workspace\Dev-Mark\server\models\box.js:31:1) [0] at Box.build (C:\workspace\Dev-Mark\server\node_modules\sequelize\lib\model.js:1326:12) [0] at Box.create (C:\workspace\Dev-Mark\server\node_modules\sequelize\lib\model.js:1344:23) [0] at C:\workspace\Dev-Mark\server\controller\box.js:36:44 [0] at Generator.next (<anonymous>) [0] at C:\workspace\Dev-Mark\server\controller\box.js:8:71 [0] at new Promise (<anonymous>) [0] at __awaiter (C:\workspace\Dev-Mark\server\controller\box.js:4:12) [0] C:\workspace\Dev-Mark\server\node_modules\sequelize\lib\model.js:83 [0] for (const key of Object.keys(this.constructor._attributeManipulation)) { [0] ^ [0] [0] TypeError: Cannot convert undefined or null to object [0] at Function.keys (<anonymous>) [0] at Timeout._onTimeout (C:\workspace\Dev-Mark\server\node_modules\sequelize\lib\model.js:83:34) [0] at listOnTimeout (node:internal/timers:564:17) [0] at process.processTimers (node:internal/timers:507:7) [0] [0] Node.js v18.13.0 [1] [HPM] Error occurred while proxying request localhost:3000/api/box/ to http://localhost:5000/ [ECONNRESET] (https ://nodejs.org/api/errors.html#errors_common_system_errors) [0] npm run server exited with code 1 --> Sending SIGTERM to other processes.. [1] npm run client exited with code 1이번에는 라는 오류가 나오는데요,stackoverflow를 읽어보니 default value를 지정하라는 말도 있고 init을 하지 않았다는 말도 있는데 둘 다 제 케이스에는 해당하지 않는 것 같습니다.sequelize 공식문서에서도 읽어보았지만 문제가 뭔지 잘 모르겠습니다...Box.js (변환)"use strict"; var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { if (k2 === undefined) k2 = k; var desc = Object.getOwnPropertyDescriptor(m, k); if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { desc = { enumerable: true, get: function() { return m[k]; } }; } Object.defineProperty(o, k2, desc); }) : (function(o, m, k, k2) { if (k2 === undefined) k2 = k; o[k2] = m[k]; })); var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { Object.defineProperty(o, "default", { enumerable: true, value: v }); }) : function(o, v) { o["default"] = v; }); var __importStar = (this && this.__importStar) || function (mod) { if (mod && mod.__esModule) return mod; var result = {}; if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); __setModuleDefault(result, mod); return result; }; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); const sequelize_1 = __importStar(require("sequelize")); const user_js_1 = __importDefault(require("./user.js")); class Box extends sequelize_1.Model { static initiate(sequelize) { Box.init({ id: { type: sequelize_1.default.INTEGER, primaryKey: true, autoIncrement: true, }, box: { type: sequelize_1.default.STRING(15), allowNull: false, }, img: { type: sequelize_1.default.STRING(200), allowNull: true, }, createdAt: sequelize_1.default.DATE, updatedAt: sequelize_1.default.DATE, }, { sequelize, timestamps: true, underscored: false, modelName: "Box", tableName: "boxs", paranoid: false, charset: "utf8mb4", collate: "utf8mb4_general_ci", }); } static associate() { Box.belongsTo(user_js_1.default); } } exports.default = Box; box.tsimport Sequelize, { CreationOptional, InferAttributes, InferCreationAttributes, Model, ForeignKey, } from "sequelize"; import User from "./user.js"; class Box extends Model<InferAttributes<Box>, InferCreationAttributes<Box>> { declare id: CreationOptional<number>; declare box: string; declare img: string; declare createdAt: CreationOptional<Date>; declare updatedAt: CreationOptional<Date>; declare UserId: ForeignKey<User["id"]>; static initiate(sequelize: Sequelize.Sequelize) { Box.init( { id: { type: Sequelize.INTEGER, primaryKey: true, autoIncrement: true, }, box: { type: Sequelize.STRING(15), allowNull: false, }, img: { type: Sequelize.STRING(200), allowNull: true, }, createdAt: Sequelize.DATE, updatedAt: Sequelize.DATE, }, { sequelize, timestamps: true, underscored: false, modelName: "Box", tableName: "boxs", paranoid: false, charset: "utf8mb4", collate: "utf8mb4_general_ci", } ); } static associate() { Box.belongsTo(User); } } export default Box; user.tsimport Sequelize, { CreationOptional, InferAttributes, InferCreationAttributes, Model, BelongsToManyAddAssociationMixin, NonAttribute, } from "sequelize"; class User extends Model<InferAttributes<User>, InferCreationAttributes<User>> { declare id: CreationOptional<number>; // 'CreationOptional' is a special type that marks the field as optional // id can be undefined during creation when using `autoIncrement` declare email: string; declare nick: string; declare password: CreationOptional<string>; declare provider: CreationOptional<string>; declare snsId: CreationOptional<string>; declare createdAt: CreationOptional<Date>; // createdAt can be undefined during creation declare updatedAt: CreationOptional<Date>; // updatedAt can be undefined during creation declare deletedAt: CreationOptional<Date>; // ... static initiate(sequelize: Sequelize.Sequelize) { User.init( { id: { type: Sequelize.INTEGER, primaryKey: true, autoIncrement: true, }, email: { type: Sequelize.STRING(40), allowNull: true, unique: true, }, nick: { type: Sequelize.STRING(15), allowNull: false, }, password: { type: Sequelize.STRING(100), allowNull: true, }, provider: { type: Sequelize.ENUM("local", "kakao", "github"), allowNull: false, defaultValue: "local", }, snsId: { type: Sequelize.STRING(30), allowNull: true, }, createdAt: Sequelize.DATE, updatedAt: Sequelize.DATE, deletedAt: Sequelize.DATE, }, { sequelize, timestamps: true, underscored: false, modelName: "User", tableName: "users", paranoid: true, charset: "utf8", collate: "utf8_general_ci", } ); } static associate() { } } export default User; index.tsimport Sequelize from 'sequelize'; import configObj from '../config/config.js'; import User from './user.js'; import Post from './post.js'; import Hashtag from './hashtag.js'; import Alarm from './alarm.js'; import Bookmark from './bookmark.js'; import Box from './Box.js'; const env = process.env.NODE_ENV as 'production' | 'test' || 'development'; const config = configObj[env]; export const sequelize = new Sequelize.Sequelize( config.database, config.username, config.password, config, ); Alarm.initiate(sequelize); Bookmark.initiate(sequelize); Box.initiate(sequelize); Hashtag.initiate(sequelize); Post.initiate(sequelize); User.initiate(sequelize); Alarm.associate(); Bookmark.associate(); Box.associate(); Hashtag.associate(); Post.associate(); User.associate();
-
해결됨파이썬 알고리즘 문제풀이 입문(코딩테스트 대비)
gcd 최대공약수
안녕하세요 선생님정보 올림피아드같은 대회에서는 gcd같은 함수를 사용할 수 있을까요?만약 최대공약수를 구하는 문제가 나온다면gcd를 이용해서 풀어도 되는건가요? 아니면 최대공약수를 구하는 코드를 작성해야 하나요? 그리고, 혹시 파이썬 내장함수 math의 gcd 함수가 작동되는 원리를 알고계신가요?? 감사합니다.
-
미해결스프링 핵심 원리 - 기본편
@beforeEach 사용하는 이유가 궁금합니다.
@beforeEach 를 사용하면 모든 테스트는 자신이 실행되기 전에 이 작업을 수행한다 라고 되어있는데 MemberServiceTest 부분에서 @beforeEach를 안쓰고MemberService memberService; AppConfig appConfig = new AppConfig(); memberService = appConfig.memberService();위와같이 쓰니 오류(Unknown class: 'memberService')가 났습니다.MemberService memberService; @BeforeEach public void beforeEach(){ AppConfig appConfig = new AppConfig(); memberService = appConfig.memberService(); }위의 코드처럼 @BeforeEach 사용해야 appConfig와 memberService를 정의 할 수 있는 이유가 궁금하며 @BeforeEach가 없으면 왜 오류가 나는지 궁금합니다.답변주시면 정말 감사하겠습니다.
-
해결됨파이썬 알고리즘 문제풀이 입문(코딩테스트 대비)
이항계수
안녕하세요 선생님 https://www.acmicpc.net/problem/11050제가 이항 계수1 이라는 문제를 풀고 있는데, 이항 계수가 뭔지 잘 모르겠어서 질문 올립니다.이항정리에 대해서 검색도 해보았는데,를 어떻게 구해야 할까요?감사합니다.
-
미해결처음 배우는 리액트 네이티브
OS 네이트브 코드를 개발하면서 UI 를 리액트 네이티브로
안드로이드 NDK와 같은 스마트폰 OS 네이트브 코드를 개발하면서 UI 를 리액트 네이티브로 구현할 수 있는지 궁금합니다.저는 gstreamer 파이프라인을 구현한 앱을 만들고 싶습니다. 또 opencv 도 사용하고요, 딥러닝 라이브러리도 사용하고 싶습니다. 이런 부분은 아마도 안드로이드 NDK 와 같은 걸 써야 할 것 같습니다. 아이폰은 잘 모르지만 아마 iOS 에도 NDK 비슷한 것이 있을 것 같습니다. 이렇게 플랫폼에 종속된 기술을 각 플랫폼 별로 구현해야 하는 것은 피할 수 없을 것 같습니다. 그러나 UI 부분은 리액트 네이티브로 원소스로 구현하고 싶습니다.이런 식의 구현을 할 수 있는지, 할 수 있다면 어떤 참고 자료가 있을지 궁금합니다.
-
해결됨[코드캠프] 부트캠프에서 만든 고농축 백엔드 코스
M:N 등록/조회 API 작성에서 Typescript 문제 질문드립니다.
안녕하세요. 제가 찾고 기다리던 내용의 강의라 매우 만족하며 수강하고 있는 수강생입니다! ㅎproducts.service.ts 파일에서 create와 update 메서드 작성할 때 typescript 에러에 대해 질문드립니다.products.service.ts 파일 create 메서드에서 productTags를 등록하는 과정에const result2 = [] 부분을 const result2: string[]로 작성하면 await productRepository.save(...) 에서 No overload matches this call이 뜨고update 메서드에서 updateProductInput에 UpdateProductInput로 타입을 지정하면 위와 마찬가지로 await productRepository.save(newProduct)에서 No overload matches this call이 뜹니다.두 경우 모두 Type 'string' is not assignable to type 'ProductTag' 문제로 product.entity.ts에서는 productTag를 아래와 같이 등록하고 @Field(() => [ProductTag]) @JoinTable() @ManyToMany(() => ProductTag, (productTags) => productTags.products) productTags: ProductTag[]; createProduct.input.ts에서는 CreateProductInput에서 productTag를 아래와 같이 등록해서 발생하는 문제라고 추측했습니다.@Field(() => [String]) productTags: string[];두 경우 모두 타입을 지정하지 않고 any로 두면 문제는 사라지긴 합니다. any로 두고 사용할 수밖에 없는 것인지 아니면 타입 지정을 해서 사용하는 방법이 있는지 궁금합니다.
-
해결됨[코드캠프] 부트캠프에서 만든 고농축 백엔드 코스
mysql 데이터베이스 연결 안되는 문제 Unable to connect to the database
yarn start:dev 실행 하고 나면 아래와 같이 나오면서 에러가 뜨고 있어요 ERROR [TypeOrmModule] Unable to connect to the database. Retrying (1)...아래 코드도 정상적으로 기입 했는데, 계속 접속 오류로 연결이 되지가 않습니다.import { ApolloDriver, ApolloDriverConfig } from '@nestjs/apollo' import { Module } from '@nestjs/common' import { GraphQLModule } from '@nestjs/graphql' import { TypeOrmModule } from '@nestjs/typeorm' import { BoardsModule } from './apis/boards/boards.module' import { Board } from './apis/boards/entities/board.entity' @Module({ imports: [ BoardsModule, GraphQLModule.forRoot<ApolloDriverConfig>({ driver: ApolloDriver, autoSchemaFile: 'src/commons/graphql/schema.gql', }), TypeOrmModule.forRoot({ type: 'mysql', host: 'localhost', port: 3306, username: 'root', password: 'test1234', database: 'myproject03', entities: [Board], synchronize: true, logging: true, }), ], // controllers: [AppController], // providers: [AppService], }) export class AppModule {} 현재 brew 확인시 Mysql 서버도 정상적으로 켜져 있는것을 확인 할 수 있어요 디비버에서도myproject03 이라고 정확하게 만들었습니다.선생님의 강의하고 다른부분을 못 찾았는데,데이터 베이스가 연결이 안될 때는 어느부분을 더 점검 해 봐야 할지요?
-
미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part4: 게임 서버
new List 동기화 와 관련하여..
public List<IPacket> PopAll(){ List<IPacket> list = new List<IPacket>(); lock(_lock) { ...어떤 처리.. }} 이 함수가 멀티 스레드로 실행 된다고 했을대 list 이 변수는 안에가 list 형태인데 linkedlist 같은것도 스레드 세이프 한건가요?여러개의 스레드가 linkedlist 를 생성만 한다고 했을때(위의 예시처럼 원소 추가나 조작 없이) 동시에 new 연산이 내부에서 실행 된다 여러개 스레드에서 동시에 힙에 new 연산이 실행될것 같은데(예를 들어 c++ vector<> 같은..) 멀티스레드로 new 연산시 같은 주소에 생성될 일이 발생할 수도 있지 않을까 해서요 질문을 요약하자면-지역변수에서 힙쪽의 new 를 생성하는게 있다면 그것은 스레드 세이프한가? 라는것이 질문입니다답변 부탁드려요!