나는 버퍼 클래스가 무엇인지 이해하지 못한다. 그들은 버퍼링을위한 것이 아닌가? 이것은 하나의 버퍼 객체가 동시에 읽고 독립적으로 읽거나 쓸 수 있어야한다는 것을 의미한다고 생각합니다. 그럼에도 불구하고 버퍼는 하나만 읽고 쓰기를위한 하나의 position
을 허용합니다. 즉, 내가 상대방 put()
으로 버퍼에 무엇인가 쓴다면 상대적인 get()
과 관련된 민감한 것을 읽을 수 없다는 것을 의미합니다. 또한 내가 put()
와 get()
를 교환 할 수 있으면 전화를 걸면 정신 착란을 느낍니다.Java NIO Buffer 클래스의 주요 용도는 무엇입니까?
버퍼에 대한 사용 패턴 (샘플)이 있습니까? 이러한 버퍼가 기존 어레이보다 다소 훌륭하다는 것은 분명합니다.
동의합니다. 별도의 읽기 포인터와 쓰기 포인터가 없기 때문에 설계가 잘못되었다고 생각됩니다. 그들이 제공 한 'flip()'작업의 추악한 이름은 게임을 멀리합니다. 현실 세계에서 뭔가와 일치했다면 더 나은 이름이었을 것입니다. 그 대신, 그것은 완전히 인공적인 이름을 가진 API 인공물입니다. – EJP