묻고 답해요
164만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part4: 게임 서버
12분 40초 질문
1. A라는 쓰레드가 Push에서 락을 잡는다.(다른애가 Push를 못하는 상황) 그리고 _jobQueue에다가 일감을 밀어 넣는다. 2. lock 안에서 flush가 true로 바뀌어서 Flush함수로 간다. 3. A쓰레드는 Flush함수에 들어와서 while문안에서 Pop을 한다. 4. Flush에서 Pop을 하는 순간 A는 락을 잡고 "_jobQueue.Count == 0" 이 될때까지 retrun _jobQueue.Dequeue();를 하면서 Flush의 while문을 돌게된다. ********* <질문> A라는 쓰레드가 Push에 와서 최초의 _flush를 true로 바꾸어 주어서 모든 쓰레드들이 접근이 가능한 _flush는 true인 상태여서 A가 Flush함수를 실행하러 계속 안에 있고 다른 B라는 쓰레드가 Push에와서 락을 잡고 일감을 밀어 넣는다고 해도 _flush는 true라서 Push안의 flush를 true로 바꿀 수 없어서 if (flush)에 조건이 안맞아 락만 걸고 일감을 밀어넣고 나오고 A만 Flush를 실행할 수 있고 A만 Flush함수에 계속 상주해 있고 다른애들이 계속 일감만 밀어 넣어주는 방식인가요?? Pop에서 락을 건 이유는 그냥 데이터를 안전하게 꺼내기 위함이고... 이렇게 이해했는데 맞을까요??
-
미해결FreeRTOS 프로그래밍
Nucleo-64 보드의 firmware update error
안녕하세요 FreeRTOS 강의를 새로 수강하게 된 문수영이라고 합니다. 업무 상 RTOS 환경에서 개발을 할 예정이라 RTOS의 기본을 익히기 위해 강좌를 수강하였고 기대가 많이 됩니다. 개발환경 구축을 위해 NUCLEO-64 (STM32F104RB) 보드를 구입하였고 pc에 연결한 다음 STM32CubeIDE를 실행하니 Firmware update를 하라는 안내문이 뜨더군요. 그래서 해당 IDE에 내장된 STLINKUpgrade라는 프로그램을 실행하였더니 firmware version을 확인할 수 없다는 메시지가 출력되면서 update 버튼이 비활성화된 상태로 보입니다. (아래 그림 참조) 펌웨어 업데이트를 하지 않은상태에서는 예제 프로그램의 디버깅이나 실행이 되지 않아 먼저 업데이트를 해야 하는데 위와 같은 에러가 발생하여 학습 진도가 나가지 못하고 있는 상태입니다. 위 문제의 원인은 무엇인지, 해결방법은 무엇인지 알려 주시면 감사하겠습니다.
-
미해결Slack 클론 코딩[백엔드 with NestJS + TypeORM]
안녕하세요 질문 있습니다.
QueryFailedError: Field 'createdAt' doesn't have a default value 이런 에러가 계속 떴습니다. 그래서 포스트맨으로 이메일, 비밀번호, 닉네임을 적어서 보내도 저 에러 메시지가 떠서 구글링 해서 찾아보니 createdAt, updatedAt때문에 자꾸 에러나는 것 같았습니다. 그래서 @Column("datetime", { name: "updatedAt" })updatedAt: Date;에서 @CreateDateColumn({ name: 'updatedAt', type: 'datetime' })updatedAt: Date;로 바꿔보니까 잘 되었습니다. (updatedAt도 바꿈)왜이럴까요?
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
혹시 이런 경우는 무엇인가요?
권한을 주고 ./h2.sh를 하면 브라우저에 3분 45초경에 나오는 것 처럼 안 나오고 이렇게 뜨는데 무슨 문제일까요? 구글링해봐도 저런 사례는 없는거같아요 ㅠㅠㅠ
-
미해결스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술
response 객체의 설정 순서
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요. response객체를 설정할 때, status-line을 먼저 설정하시고 - header 설정 후- messageBody를 설정하셨는데 혹시 이 순서를 지키지 않으면 설정이 제대로 되지 않는지 궁금합니다. 예를 들어 저의 경우는 response.getWriter().write("ok"); 문장 이후에 response.setCharacterEncoding("utf-8"); 을 작성하였는데, 실제 응답 메세지의 인코딩 방식으로 utf-8이 적용이 되지 않았습니다. 그래서 순서를 지켜야 하는건지 궁금했습니다. 감사합니다.
-
미해결파이썬 알고리즘 문제풀이 입문(코딩테스트 대비)
몸무게 짝짓기
정렬 후에 짝지어서 나갈 때 가장 큰몸무게와 가장 작은몸무게 나가는게 아니라 M kg 에 최대한 가깝게 짝지어서 나가는게 맞지 않나요??
-
미해결React 기반 Gatsby로 기술 블로그 개발하기
thumbnail 에 링크 넣기
thumbnail: './doguri.jpeg 이런 방식으로 상대경로로 파일을 가져오는데, url을 이용해서 불러오는 것도 가능할까요?
-
미해결파이썬 플라스크(Flask) 기반 웹 개발 및 업무 자동화 서비스 활용
디버그모드ㅠㅠ
디버그모드를 TRUE로 만들면 웹페이지 /test라 치면 자동으로 웹이 생기는건가요? 아니면 따로 웹을 설정해줘야되는건가요?
-
미해결탄탄한 백엔드 NestJS, 기초부터 심화까지
코드 래핑
안녕하세요 실무에서 사용할 때 코드 래핑을 보통 하는데, 코드 래핑 이라는게 libary dependencies를 줄이기 위해서 기존 코드를 한 번 wrap(래핑)한다라고 알고 있습니다. 혹시 실무에서 사용하시는 래핑 기법들이 있으신지 알고 싶습니다. 이렇게 질문 드리는 이유는 만약에 보일러 플레이트를 만들어 놓고 사용하다가 나중에 libary가 업데이트 되서 버전이 올라가면 그 때, library 버전도 업데이트를 시키면 오류가 많이 나올 수 있을꺼 같아서 질문드립니다. 가령 만들어주신 boilerplate에서 래핑이 되어 있지 않는다면, 수 많은 dependencies가 있을텐데, 특정 사용하는 library가 업데이트 되서 만약 버전업을 실수로 하거나 했을 때 전체적으로 문제가 발생 할 수 있을꺼 같아서요. 사용하는 라이브러리의 버전을 바꿔주지 않는 다면 문제는 없을까요?
-
미해결스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술
pdf 오타
pdf 24페이지에 파라미터 전송 부분의 결과에 복수 파라미터 조회 아래에 username=hello 하나만 나와야 하는데 복수파라미터 전송한것처럼 두개가 나와있습니다.
-
미해결Vue.js + TypeScript 완벽 가이드
깃헙 권한 요청드립니다.
2번째 프로젝트 권한 요청드립니다. igoman2@ajou.ac.kr 입니다. 감사합니다.
-
미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part7: MMO 컨텐츠 구현 (Unity + C# 서버 연동 기초)
Tilemap tm = Util. 에서 Util이 잡히지 않습니다.
안녕하세요! 영상을 보며 공부중인 학생입니다! 개인적인 시간상 전 part 영상을 안보고 지금 part 영상으로 건너뛰어 시작하였습니다. Util과 File 부분이 참조가 되지 않아 진행이 멈춰있는 와중에 File은 파일 생성과 관련되어 있는 것 같아 찾아보니 using System.IO; 를 안해서 나오는 현상이여서 해결 하였으나 Util은 어떤 using을 해줘야 하는지 모르겠습니다.
-
해결됨[2026년 출제기준] 웹디자인개발기능사 실기시험 완벽 가이드
제공해주신 txt 파일 관련
선생님! 맥os의 경우 제공해주신 최종본 제작 파일 안에 txt파일이 모두 깨져서 안보이는데 어떻게 확인 할 방법이 있을까요ㅜㅜ?
-
미해결[리뉴얼] React로 NodeBird SNS 만들기
react-slick CSS가 적용안되는 에러
안녕하세요 제로초님 강의 해주신 코드에서 조금 변경하여 진행 중인데 react-slick의 css가 적용이 되지 않는 에러가 발생하여 원인이 궁금하여 질문 남깁니다.(기능은 정상적으로 동작합니다.) 우선 제 생각엔 react-slick 내부적으로 css가 inherit 로 되어있어서 저 부분이 적용안되는 것 같기도하고 사이즈를 Wrapper 높이를 조절해도 해결이 안됩니다. 클래스 네임 보고 하나하나 css 커스텀 해서 적용하면 해결될 것 같은데 에러 발생 원인을 알고싶습니다. 우선 제가 구현하고 싶은 ui는 인스타그램 웹버전 참고해서 비슷하게 만들고 싶습니다. 현재화면과 전체코드 PostImages.js 첨부하겠습니다. 현재 화면 전체 코드 https://github.com/HomieKim/SNS_Project/tree/master/front PostImages.js import React, { useCallback, useState } from 'react'; import PropTypes from 'prop-types'; import styled, { createGlobalStyle } from 'styled-components'; import Slider from 'react-slick'; const ImgWrapper = styled.div` padding: 16px; text-align: center; & img { margin: 0 auto; max-height: 750px; } `; const Global = createGlobalStyle` .slick-slide { display: inline-block; width : 100%; } .ant-card-cover { transform: none !important; } ` const SlideWrapper = styled.div` max-height : 800px; overflow : hidden; `; const PostImages = ({images})=>{ //const [showImagesZoom, setShowImagesZoom] = useState(false); const onZoom = useCallback(()=> { //setShowImagesZoom(true); },[]); const settings = { dots: true, infinite : true, speed: 500, slideToShow : 1, slideToScroll : 1 } if(images.length === 1) { return ( <> <img style={{ maxHeight : 750}} src={images[0].src} alt={images[0].src} onClick={onZoom} /> </> ) } return ( <div> <Global /> <SlideWrapper> <Slider {...settings}> { images.map((item) => ( <ImgWrapper key={item.src} > <img src={item.src} alt={item.src} /> </ImgWrapper> )) } </Slider> </SlideWrapper> </div> ) } PostImages.propTypes = { images: PropTypes.arrayOf(PropTypes.shape({ src: PropTypes.string, })).isRequired, }; export default PostImages; 좋은 강의 감사합니다!
-
미해결기초부터 따라하는 디지털포렌식
Sysinternals Suite(strings.exe)에 관해
질문은 아니고 Sysinternal Suite를 처음 사용하시는 분들이 모르실까봐 추가적인 정보를 작성해 주셨으면 합니다. 강의 내에서 strings.exe를 이용하는데 Sysinternal Suite를 처음 사용하시는 경우 강의처럼 명령어를 치면 제대로 된 결과값이 안나옵니다. 제대로 된 결과 값이 나오기 위해서는 -accepteula 옵션을 추가 해야합니다. 그 뒤로는 강의 처럼 -accepteula 옵션없이 명령을 실행해도 결과가 잘 나옵니다.
-
미해결스프링 MVC 2편 - 백엔드 웹 개발 활용 기술
GetMapping
[질문 내용] 안녕하세요 김영한 개발자님! 항상 강의 잘 보고 있습니다. 다름이 아니라 0:45분 경에 @GetMapping("link")부분에서 "/link"가 아닌 "link"로 작성해도 잘 동작하는 것이 궁금해서 질문 남겨요. @RequestMapping("/basic")부터 따지면 /basic/link가 되어야 될 것 같은데 /link 앞에 '/'를 없애도 스프링이 자동으로 삽입해 주는 건가요? 지난 강의에서 /basic/과 /basic이 동일하게 동작한다고 말씀하신 것 같은데 이와같은 이유때문일까요? 감사합니다!
-
미해결반응형 웹사이트 포트폴리오(Architecture Agency)
opacity-image background 문제
선생님 제가 .welcome-text를 flex를 이용해서 중앙정렬시켰거든요 그렇게 했더니 .opacity-image에 backgrund 넣어도 화면에 안뜨는데 원래 이런건가요?
-
미해결Flutter 중급 1편 - 클린 아키텍처
테스트 범위 질문드립니다.
핵심 로직을 테스트하기 위해 가짜목을 사용하는 것은 이해했는데요. 최종단의 client가 실제 정상 통신하는지까지의 테스트는 통상적으로 하지 않는 것인가요? 예를들어 api를 제공하는 벤더사에서 응답 데이터의 형태를 바꾸거나 api uri 규칙을 바꾸게 되면 실제 앱은 오류를 뱉을텐데 이런 부분은 어떤식으로 테스트 전략을 짜야하는지 궁금합니다.
-
해결됨[2026년 출제기준] 웹디자인개발기능사 실기시험 완벽 가이드
제이쿼리 setInterval 관련 질문
css보다 코드는 간결한데 조금 헷갈려서 좀 더 명확히 이해하고자 질문드립니다ㅜ! 본문영상과 같은 상황일때 여기서 eq(1)이 가장 먼저 실행되고 eq(1)은 즉 이미지01 eq(2)은 이미지02 eq(0)이 가장 마지막에 실행되고 eq(0)은 이미지03 으로 보면 되는걸까요?
-
미해결프론트엔드 개발환경의 이해와 실습 (webpack, babel, eslint..)
file-loader를 이용할 때 png 파일이 깨지는 현상 .
강의의 버전과는 다르게, 최신버전의 webpack v5.70.0 을 사용하고 있습니다. 강의 내용을 따라 하다보면 file-loader를 이용해서, bg.png와 times-circle.png를 dist파일로 옮겨놔야 하는데 이 때, jpg는 정상적으로 파일이 옮겨지는 반면에 png파일은 작동하지 않습니다. 이와 관련해서 찾아보니, v5 버전 이후 [file-loader, url-loader, raw-loader]는 webpack의 기본 모듈로 채택되면서 더 이상 v6버전의 webpack과 호환이 되지 않는다고 합니다. 그러니, [file-loader,url-loader]를 설치하지 마시고 이 링크 `https://webpack.js.org/guides/asset-modules` 를 참고 하시어 사용 방법을 확인해보시는게 좋은 것 같습니다. 아래는 url-loader를 현 강의의 예제와 동일하게 url-loader를 사용하는 방법입니다. 1-webpack/2-loader 브런치 실습 예제에서 사용 하실 수 있습니다. 2-loader의 times-circle.png 파일은 7kb 정도이니, 아래의 코드를 이용하면 times-circle.png 파일은 데이터 스트링으로 url() 함수의 인자로 전달 된 것을 볼 수 있을 겁니다. const path = require('path'); module.exports = { mode: 'development', entry: { main: './src/app.js' }, output: { filename: '[name].js', path: path.resolve('./dist'), assetModuleFilename: '[hash][ext][query]' //file-loader output }, module: { rules: [ { test: /\.css$/, use: [ 'style-loader', 'css-loader' ] }, { //url-loader 사용시 test: /\.(jpe?g|gif|png)$/i, type: 'asset', parser: { dataUrlCondition: { maxSize: 8 * 1024 // 8kb } } }, // { //file-loader 만 사용시 // test: /\.(jpe?g|gif|png)$/i, // type: 'asset/resource', // } ] } }