프로그래밍 QnA

익명 사용자의 이미지

자바에는 c에서의 포인터가 없나요?

자바를 배운적이 없는데 문득 궁금해져서
검색해보니
c에서 사용하는 것과 같은 느낌의 포인터는 없지만 비슷한 개념이 사용되는거 같은데

그러면 예를들어
c main에서

char* a[100];
을 함수에 넘길떄

void recv(char *pointer);
이런형태가 되고

pointer는 a의 메모리값을 가르키는 걸로알고있는데
자바는
a[100]을 그대로 복사해서 하나더 만드는건가요?

bluegil92의 이미지

아두이노 이용해서 IOT 구현하려고 하는데 조언 부탁드립니다.

아두이노 여러개와 서버 간 통신을 하려고합니다.

아두이노(측정용) -- 서버 -- 아두이노(제어용)/안드로이드(view, 제어용) -- 장치

처음에는 리눅스로 서버를 구축해서 <값 측정하는 아두이노>로부터 데이터를 받아 바로 <다른 장치를 제어하는 소스코드를 업로드 한 아두이노>나 <안드로이드 App>으로 특정 데이터값을 전송하려고 했는데,
어떻게 할지 감이 잡히지 않습니다.

ubuntu 14.04 리눅스 서버 신청하여 제공받은 IP가 있는데, putty로 원격 접속 하여 통신 가능한 서버 구축이 가능할까요?
서버와 안드로이드 간에 통신할 때 안드로이드가 데이터를 가져가기 위해 웹 서버를 만드는게 효율적일까요?
리눅스 서버가 아닌 아두이노에 이더넷 쉴드 장착하여 아두이노 웹 서버를 만드는게 맞는건지?..

기본지식이 거의 없고 가지고있는 지식마저 뒤죽박죽이라 시작도 제대로 못하고 있습니다.. 조언부탁드려요.

익명 사용자의 이미지

자바 nio에 대해

책에서 io와 nio를 비교하면서 nio를 사용하는게 더 좋은 경우에 대해 설명해주는데 이 부분이 이해가 안가서요.

NIO는 연결 클라이언트 수가 많고 하나의 입출력 처리 작업이 오래 걸리지 않는 경우에 사용하라고 나와있습니다.

NIO가 요청을 비동기 방식으로 처리하면서 무조건 요청이 온다고 해서 스레드를 할당하는게 아니라 입출력 준비가 완료된 조건이 성립할 때에 작업스레드가 작업 큐에 넣고 동작을 시킨다고 하여 스레드의 폭증을 막을 수 있다. 이런 말 같습니다.

그런데 IO에서도 스레드 폭증을 막기 위해 스레드 풀을 사용하지 않나요? 제가 생각하기에 스레드 풀로 스레드를 관리하면 NIO와 크게 달라지는 건 없을 것 같은데 말이죠..

(입출력 처리 작업이 오래 걸리지 않는 경우에 사용하라는 말은 제한된 스레드로 작업을 관리하기 때문에 엄청난 숫자의 요청이 들어온 경우 입출력 준비가 다 되었어도 스레드를 더이상 생성할 수 없어서 대기상태가 되어버리니까 그렇게 써져있는 것 같은데..이것도 io를 사용하면서 스레드 풀로 스레드를 관리하면 결과는 동일할 것 같아요)

Post_Ada의 이미지

백준 문제 런타임에러 조언좀 부탁드립니다.

문제: 영어 대소문자와 띄어쓰기만으로 이루어진 문장이 주어진다.
이 문장에는 몇개의 단어가 있을까?이를 구하는 프로그램을 작성하시오. 단, 단어는 띄어쓰기 하나로 구분된다고 생각한다.

입력: 첫 줄에 영어 대소문자와 띄어쓰기로 이루어진 문장이 주어진다. 이 문장의 길이는 10000000 을 넘지 않는다.

jaykee33의 이미지

intelliJ 에서 springMVC + springBoot 사용하고싶습니다

안녕하세요 선배님들 일단 intelliJ를 이제야 입문했네요.
Maven에서 SpringMVC + SpringBoot 체계로 개발을 하려하는데,
community 버전은 spring 프레임워크가 없나요?
구글링해서 보이는 자료들은 다들 Spring 이니셜라이저? 이런것도 탭에 있고 한데
저는 스프링관련된 탭이 안보이네요..
무료버전이어서 그런건지 플러그인 설치가 따로 필요한건지... 무지해서 죄송합니다
SpringBoot는 퀵스타터로 pom.xml이랑 스트럭쳐 직접 만들어서 실행해서 Hello 예제 찍히는건 확인했는데요,
혹시 intelliJ에서 스프링 사용시 따로 더 설치해야되는게 있는건가요?
무료버전이라 지원이 안되는거라면,
SpringMVC 기본 샘플과 똑같은 구조를 만들고 SpringBoot 관련 디펜던시를 추가시키면 되는건가요??

헤..헬프미..! 플리즈..!

pmj0403의 이미지

인터럽트 비활성화 시, 다른 task들의 스케쥴링이 안되는 이유는?

A라는 task에서 인터럽트 비활성화 API 호출 시, A task 외에 다른 task들의 동작이 멈추는 게 맞나요?
예를 들어 A task에서 인터럽트 비활성화 API 호출 시점에 B task에서 수행하고 있던 연산도 중지되는게 맞는지..

현재 제가 아는 것은 인터럽트를 비활성화하게 되면 OS timer interrupt 역시 비활성화 되고 task scheduling이 안된다는 것 뿐인데.. 자세하게 잘 모르겠어요. 개념적으로 논리적으로 자세히 설명해주실 분 계신가요?

sko5473의 이미지

완료

완료

익명 사용자의 이미지

파이썬 2 바이트 문자열을 10진수로 어떻게 변환하나요?

b'\x69\x94' 라는 길이 2의 바이트가 있습니다.

16진수 형태로 존재하는 저 바이트는 포트번호를 뜻하고 있으며, 6994를 10진수로 변환하면 27028이 됩니다.

이 작업을 파이썬을 통해서 진행하고 싶은데 여러번 시도해봐도 잘 해결이 안되네요.

어떤식으로 변환을 해야 포트넘버를 구할 수 있을까요?

감사합니다.

ngw2833의 이미지

Linux에서 나오는 몇 가지 용어들에 대해 질문 좀 드리고 싶습니다..

Linux Begining Programming을 배우는 도중에 해석하기 힘든 용어들이 나와서..
한 번 여쭙고자 합니다..
Terminals 부분을 보면서.. Canonical Mode라는 말이 자주 나오더라고요.
반대의 의미로 Noncanonical이라는 의미도 나오는데

사전적 의미로는 standard와 비슷한 의미가 있네요.

리눅스 원서를 읽으면서 맥락을 어떻게 읽어나가야 할 지 고민입니다. 간간히 등장하는 단어인데
왠지 제가 생각하는 의미와 조금 다른 듯 해서 한 번 여쭙습니다..

페이지

프로그래밍 QnA 구독하기